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

 

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

转载于:https://www.cnblogs.com/4991tcl/p/11133991.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值