sql 优化

写sql的时候,尽量避免写一些全表检索的操作,让引擎使用索引来查询,这样在查询的时候会快很多,小编就曾经在where子句将<>替换成=,速度提升了600倍!!!

今天我们就来总结下,sql中有哪些操作是会造成全表检索的

在查询字段时,多用具体字段代替 select  *  from table 的 * 

在where子句中,除了小编刚刚说的  <> 之外,还有:

1、避免用  !=

2、对字段进行 null 值判断    xxx is null

3、使用 or 来连接条件

  当要用or来连接时,可用  union all   来拼接两个条件的表 

  table1 union all table2

4、in 和 not in 也会造成全表检索

  exists 可替代 in 

5、like 模糊匹配

6、不要在 where 子句中的“=”左边进行函数、算术运算或其他表达式运算作

  比如: where a/2 = 3 

  可以替换成  a = 6

 

还有啥好用的操作吗?分享给小编呀!!!

posted @ 2019-07-04 17:56  彩色条纹小斑马  阅读(121)  评论(0编辑  收藏  举报