由 SQL 编写导致的慢

  • 时间:
  • 浏览:4

针对SQL编写愿因的慢 SQL,优化起来还是相对比较方便的。正确的使用索引能加快查询速率单位,没办法 朋友 在编写 SQL 时就还都还都可以注意与索引相关的规则:

分页的话 limit 的什么的问题;

排序请尽量使用升序 ;

like % 在前面用只能索引;

根据联合索引的第4个及很久 的字段单独查询用只能索引;

字符串比较长的还都还都可以考虑索引一部份减少索引文件大小,提高写入速率单位;

删除表所有记录请用 truncate,暂且用 delete;

在 Innodb上用 select count(*),可能性 Innodb 会存储统计信息;

输写 SQL 带字段,以处置上方表变更带来的什么的问题,性能也是比较优的 ( 涉及到数据字典解析,请自行查询资料);

除了上述索引使用规则外,SQL 编写时还还都还都可以一阵一阵注意一下几点:

尽量规避大事务的 SQL,大事务的 SQL 会影响数据库的并发性能及主从同步;

字段类型转换愿因无需索引,如字符串类型的无需引号,数字类型的用引号等,这有可能性会用只能索引愿因全表扫描;

复合索引高选折 性的字段排在前面;

mysql 不支持函数转换,好多好多 字段前面只能加函数,很久 这将用只能索引;

order by / group by 字段包括在索引当中减少排序,速率单位会更高。

暂且在字段前面加减运算;

无需 mysql 干多余的事情,如计算;

or 的查询尽量用 union 代替 (Innodb);

慎用 Oder by rand()。

暂且使用 select *;