mysql语句优化

1、请不要在SELECT中使用DISTINCT; #会用到临时表

2、尽可能不要SELECT *,而应该查询需要用到的指定几个字段;

3、不要对两个大表进行联合,无论是内联或外联。对于需要对两个或多个表进行联合查询的情况,可以做两次或多次数据库查询;

4、在WHERE条件中,尽可能对同类型的数据列进行比较;

5、在WHERE条件中,尽量让有索引的数据列在比较表达始中单独出现;

6、在WHERE条件中,根据数据列排除不合条件数据量由多到少的次序排列条件,在不能确定排除数据多少的前提下,一般来说表达式中使用=、!=、<>要优先于>、<、>=、<=,更优先于LIKE;
如果WHERE条件中的值是数字,那么不要使用单引号进行类型转换;如果WHERE条件中使用LIKE模式匹配,不要在模式开头使用通配符%;

7、不要对WHERE条件中的非BINARY属性的CHAR/VARCHAR字段,进行大小写转换;

8、尽可能不要在SELECT中使用GROUP BY,如果确实有必要,请与主管联系确认;
来源: http://www.cnblogs.com/siqi/p/3625885.html

posted @ 2016-09-29 21:31  宁默然  阅读(70)  评论(0编辑  收藏  举报