MySQL日常SQL优化注意事项

  <前>   1 .在条件中避免双百分号“% %”上校   在MySQL的SQL查询条件中使用“% %”上校无法使用索引而进行全表扫描影响查询效率   2 .避免函数出现在在条件中   例:where 年(activedate)=,“2018”在条件中使用函数即使该字段有索引,执行计划也不会使用索引而进行全表扫描   3 .避免数据类型不一致   执行查询操作的时候,在那里的条件中使用与字段类型相同的值,尽量避免让MySQL执行转化操作,   例:activedate  & lt;, STR_TO_DATE(& # 39; 2018 - 08年- 08 - & # 39;,,& # 39;Y - % - % d % # 39;)不要写成activedate<, & # 39; 2018 - 08年- 08 - & # 39;   4 .读取适当的记录及需要的字段,避免select  *得到tab_name   5 .分组统计时可以禁止排序   MySQL默认情况下对所有group 通过的字段进行排序,如果查询包括group  by 又不需要排序操作可以禁止order  by  null   6 .减少使用子查询或者不使用子查询,可以用加入代替   7 .创建表的时候选择合适的字段属性,尽量让字段not  null,这样数据库在执行查询的时候不用比较零值   8 .在执行DML(更新、插入、删除)操作的时候使用事务维护数据的完整性   ,,,开始;   ,,,,,,,DML语句;   ,,,提交;   9 .锁定表,当进行批量操作的时候使用事务会锁定数据库,这时如果有大量的用户访问会造成延迟,可以用锁定表来代替事务   lock  table  write  select  col1 col2 得到tab_name .....   update ……; unlocktables;   10。合理使用索引   索引是提高数据库性能的有效方法,但创建索引要合理,避免建在大量重复值的字段上。在那里,加入,order 等字段上合理创建索引来提高性能。   以上个人总结供参考,欢迎指正!   之前   

  
  

MySQL日常SQL优化注意事项