在MySQL语句中我们最常用SQL语句优化
1、SQL语句独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低;SQ讣嘬铮篌L语句可以有不同的写法;1,不使用子查询如图:子查询在MySQL5.5版本里,内部执行计划器是这样执行的:先查外表再匹配内表,而不是先查内表t2,当外表的数据很大时,查询速度会非常慢。在MariaDB10/MySQL5.6版本里,采用join关联方式对其进行了优化,这条SQL会自动转换为如图:
2、2,避蕴黎匚胰免使用索引如图:由于MySQL不像Oracle那样支持函数索引,即使d字段有索引,也会直接全表扫描。应改为----->
3、3,用in来代替or 查询 低效查询如图:优化后高效查询如图:
4、4,like百分号无法使用到索引如图:修改后如图:
5、使用limit读取适当的记录如图:
6、避免数据类型不一致 如图:
7、分组统计可以禁止排序默认情况下,MySQL对所有GROUP BY col1,col2...的字段进行排序。如果查询包括GROUP BY,想要避免排序结果的消耗,则可以指定ORDER BY NULL禁止排序。
8、避免随机取记录MySQL不支持函数索引 会导致全表扫描
9、禁止不必要的order by 如图:
10、插入数据时批量插入 如图:
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:25
阅读量:20
阅读量:61
阅读量:47
阅读量:51