MYSQL 索引使用规则

索引失效

最左前缀法则

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

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

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

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

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

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

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

SQL提示

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

但是force是强迫它使用

覆盖索引

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

前缀索引

n为前缀的长度

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

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

相关推荐
Elastic 中国社区官方博客9 分钟前
现已正式发布: Elastic Cloud Hosted 上的托管 OTLP Endpoint
大数据·运维·数据库·功能测试·elasticsearch·全文检索
2501_9083298516 分钟前
使用Python自动收发邮件
jvm·数据库·python
heimeiyingwang36 分钟前
【架构实战】数据库分库分表实战
数据库·架构
爬山算法1 小时前
MongoDB(60)如何使用explain命令?
数据库·mongodb
2501_908329851 小时前
NumPy入门:高性能科学计算的基础
jvm·数据库·python
瀚高PG实验室1 小时前
数据库因坏块导致无法VACUUM FREEZE问题处理
数据库·瀚高数据库
gechunlian881 小时前
Redis简介、常用命令及优化
数据库·redis·缓存
ahauedu1 小时前
MySQL 8.0+ 默认使用 caching_sha2_password 插件进行密码加密
数据库·mysql
CoderIsArt1 小时前
编译器构建中涉及的算法
数据库·算法
IvorySQL1 小时前
从代码到舞台:HOW 2026 致敬 PostgreSQL 18 贡献者
数据库·postgresql·开源