数据库索引使用时机---适合建立、不适合建立、索引失效总结

适合建立索引的情况

1.字段的数值有唯一性的限制
2.频繁作为WHERE 查询条件的字段
3.经常GROUP BY和ORDER BY的列
4.UPDATE、DELETE的WHERE条件列
5.DISTINCT字段需要创建索引
6.多表JOIN连接操作时,创建索引注意事项
7.使用列的类型小的创建索引
8.使用字符串前缀创建索引
9.区分度高(散列性高)的列适合作为索引
10.使用最频繁的列放到联合索引的左侧
11.在多个字段都要创建索引的情况下,联合索引优于单值索引

不适合建立索引的情况

1.在where中使用不到的字段,不要设置索引
2.数据量小的表最好不要使用索引
3.有大量重复数据的列上不要建立索引
4.避免对经常更新的表创建过多的索引
5.不建议用无序的值作为索引
6.删除不再使用或者很少使用的索引
7.不要定义冗余或重复的索引

索引失效的情况

1.全值匹配我最爱
2.最佳左前缀法则
3.主键插入顺序
4.计算、函数、类型转换(自动或手动导致索引失效
5.类型转换导致索引失效
6.范围条件右边的列索引失效
7.不等于(=或者<)索引失效
8.is nul可以使用索引, is not nul无法使用索引
9.likel以通配符%开头索引失效
10.OR前后存在非索引的列,索引失效
11.数据库和表的字符集统一使用utf8mb4
12.练习及一般性建议

猜你喜欢

转载自blog.csdn.net/qq_51282224/article/details/132537301