MySql 查询效率简单优化

本文介绍如何通过合理创建索引来提升SQL查询效率,包括索引数量的控制、避免使用某些操作符以及对字段进行操作等技巧。
一、创建索引

在 where 语句和 ORDER BY 语句涉及到的列上建立索引。

索引创建注意事项:

  1. 索引并不是越多越好,索引虽然会提高 select 的效率,但是同时也会降低 insert 和 update 的效率,因为索引数据列的顺序就是表记录的物理存储顺序,一旦列值发生改变将导致整个表记录的顺序调整,导致索引需要重新建立,一个表中的索引最好不超过6个。
  2. 尽量避免在where 子句中使用 != 或 <> 操作符,否则将引擎放弃使用索引而进行全表扫描
  3. 尽量避免在 where 子句中使用 or 连接条件,否则将引擎放弃使用索引而进行全表扫描,可使用 union all 连接两个查询结果
  4. 尽量避免在 where 子句进行 null 值判断,否则将引擎放弃使用索引而进行全表扫描,最好为每个字段赋予默认值
  5. 尽量避免在 where 子句对字段进行 表达式操作或者 函数操作,否则将引擎放弃使用索引而进行全表扫描
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值