MYSQL 索引使用规则

索引失效

最左前缀法则

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

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

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

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

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

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

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

SQL提示

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

但是force是强迫它使用

覆盖索引

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

前缀索引

n为前缀的长度

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

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

相关推荐
凯歌的博客3 分钟前
DuckDB 是一款进程内的分析型数据库
数据库·ai编程
dishugj37 分钟前
Oracle物理体系结构
数据库·oracle
北亚数据恢复40 分钟前
【数据库数据恢复】NDF文件变0KB、数据库损坏?超大数据库数据恢复案例
数据库·oracle
狗凯之家源码网1 小时前
纯 PHP+MySQL 应用市场系统源码实测!
开发语言·mysql·php
数据技术说1 小时前
数据库缓存架构深度解析:命中率、一致性、多层缓存管理
数据库·架构
姚远Oracle ACE2 小时前
对比测试了 openGauss、PostgreSQL、Oracle、MySQL 的CPU 指令数
mysql·postgresql·oracle
CJi0NG2 小时前
【自用】MySQL-多表查询
数据库·mysql
雨落在了我的手上2 小时前
MySQL数据库基础(12):事务
数据库·mysql
D姐聊门店2 小时前
门店收银系统断网兜底怎么设计:本地账本、离线续传与日终对账的工程实现
数据库·saas