Mysql中基本语句优化的十个原则小结

属于自己的风景,从来不曾错过;不是自己的风景,永远只是路过。天地太大,人太渺小,不是每一道亮丽的风景都能拥有。一辈子,只求有一道令自己流连忘返,不离不弃的风景就已足够。人生的风景,是物也是人。陪自己到最后的,才是自己的风景。

前言

在数据库的应用中,程序员们通过不断的实践总结了很多经验,这些经验是一些普遍的适用规则,每一个程序员都应该了解并记住它们,在构造sql时,养成良好的习惯,下面话不多说,来看看详细的介绍:

mysql基本语句优化原则

一、尽量避免在列上运算,这样会导致索引失效

select * from t where YEAR(d) >= 2011;

优化为

select * from t where d >='2011-0101'

二、使用 JOIN 时,应该用小结果集驱动大结果集,同时把复杂的 JOIN 查询拆分成多个query,因为 JOIN 多个表,可能导致更多的锁定和堵塞

三、使用 LIKE 时,避免使用 %%

四、select 指定查询字段,不要全查出来,节省内存

五、使用批量插入语句节省交互

六、limit的基数比较大时,使用 between,between 限定比 limit 快,但是between也有缺陷,如果id中间有断行或是中间部分id不读取的情况,数据会少

select * from t where 1 limit 100000,10

优化为

select * from t where id between 100000 and 100010

七、不要使用 rand 函数取多条随机记录

八、避免使用 NULL

九、不要使用 count(id) , 而应该是 count(*)

十、不要做无谓的排序操作,而应尽可能在索引中完成排序

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

您可能有感兴趣的文章
centos7安装MySQL教程

MySQL常用SQL查询语句(含复杂SQL查询)

MySQL细数发生索引失效的情况

mysqlenum字段类型的谨慎如何使用

Mysql体系化探讨令人头疼的JOIN运算