mysql数据库 :SQL查询语句优化与一些注意说明
发布日期:2016-4-20 20:4:10
mysql数据库 :SQL查询语句优化与一些注意说明 1、MySQL不支持top,它是采用limit来实现这个功能的; 2、语句中的in和exists这样的条件能用子查询就用子查询,这样性能会提升很多,当然用关联查询更好; 3、当sql语句中含有in、like、exists时索引不起作用,开始变为全表查询; 4、有时候将一个sql语句分拆成几个小sql,并建临时表,分步查询会对性能提升有很大帮助,最近这个项目在sql没有拆分之前耗时大于270秒,将其拆分几个子语句分步查询,并建立临时表后,耗时降到25秒左右; 5、当遇到union这样的联合查询时,如果想要提高性能,可以采用将每一个子查询单独开一个线程的方式来替代实现; 6、建索引不是越多越好,但是到底看所建的索引有无用处,我们可以同explain sql语句来查看,当某字段建了索引后它的查询类型还是ALL,说明这个索引无效。
|