【mysql】mysql索引简单小总结

索引:聚集索引,辅助索引。
本质区别:叶子节点存放信息不一样。聚集索引叶子节点存档的是一整行的信息。辅助索引存放的是索引值信息。
辅助索引查询的时候需要回表(覆盖索引的时候不需要回表)。

哪些时候不走索引:(索引失效)
模糊查询:%加在前面。
or操作。
in包含两个及以上(一个走索引)。
order by 操作:排序的列同时也在where中。
使用全表扫描比使用索引快。
查询中没有用到联合索引的第一个字段。
where条件:
加not null。
类型转换(需要查询的字段的类型为integer,但是where后面放了一个string类型)。
使用函数(例如:concat合并数组)。

mysql会自动选择较快的查询方法,也可以强制设置自己设定的索引(force index)。

哪些不适合做索引,哪些适合做索引:
不适合:
区分度比较低的(例如:性别)
适合:
主键。
频繁作为条件查询的。

如何查看mysql的执行计划:
EXPLAIN + SQL语句

组合索引:(联合索引)
最左前缀:a b c
a b c、a b、a走索引
b、c、b c不走索引。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值