MYSQL 索引使用规则

索引失效

最左前缀法则

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

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

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

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

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

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

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

SQL提示

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

但是force是强迫它使用

覆盖索引

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

前缀索引

n为前缀的长度

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

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

相关推荐
zhousenshan9 分钟前
springboot事务管理几种方式
数据库
布局呆星33 分钟前
SQLite数据库的介绍与使用
数据库·python
2401_8384725133 分钟前
用Python和Twilio构建短信通知系统
jvm·数据库·python
石头wang39 分钟前
oracle jdbc 依赖以及对dbeaver的性能影响,如何选择oracle驱动, oracle jdbc 驱动
数据库·oracle
weixin_4521595541 分钟前
如何从Python初学者进阶为专家?
jvm·数据库·python
2301_790300961 小时前
用Python读取和处理NASA公开API数据
jvm·数据库·python
万象.1 小时前
redis持久化:AOF和RDB
数据库·redis·缓存
tod1132 小时前
力扣高频 SQL 50 题阶段总结(四)
开发语言·数据库·sql·算法·leetcode
!chen2 小时前
Redis快速实现布隆过滤器
数据库·redis·缓存
2301_790300962 小时前
数据分析与科学计算
jvm·数据库·python