MYSQL 索引使用规则

索引失效

最左前缀法则

where之后写的顺序不重要,存在就可以

范围查询后面的索引查询失效(比如>),但是>=或者<是不会失效的

不要在索引列上进行运算操作,否则索引失效。

字符串类型字段不加引号索引会失效

尾部模糊匹配,索引不会失效,头部模糊匹配,索引会失效

or连接前有索引,后没索引,所有的索引都会失效

如果MYSQL评估使用索引比全表更慢,则不使用索引

SQL提示

use只是建议,mysql用不用他自己评定

但是force是强迫它使用

覆盖索引

尽量使用覆盖索引(查询使用了索引,并且需要返回的列,在该索引中能全部找到),减少select*

前缀索引

n为前缀的长度

第二行就是截取前五个字符的选择性

单列索引&联合索引的选择

相关推荐
heze096 分钟前
sqli-labs-Less-22
数据库·mysql·网络安全
墨雨晨曦8817 分钟前
如何保证redis和mysql数据一致性方案对比
数据库·redis·mysql
rfidunion29 分钟前
springboot+VUE+部署(9。安装MySql)
spring boot·后端·mysql
枷锁—sha41 分钟前
【Vulhub】Discuz! 7.2 faq.php SQL 注入深度复现手册 (转义逃逸篇)
数据库·sql·php
超级种码1 小时前
Redis:Redis 常见问题及解决思路
数据库·redis·缓存
计算机学姐1 小时前
基于SpringBoot的社区互助系统
java·spring boot·后端·mysql·spring·信息可视化·推荐算法
xcLeigh1 小时前
Oracle 迁移 KingbaseES 避坑指南:工具选型、参数配置与性能调优
数据库·oracle·工具·性能·金仓·kingbasees
JY.yuyu1 小时前
SQL Server数据库
数据库
June bug1 小时前
【配环境】安装配置Oracle JDK
java·数据库·oracle
独自破碎E1 小时前
如何在MySQL中监控和优化慢SQL?
数据库·sql·mysql