MYSQL 索引使用规则

索引失效

最左前缀法则

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

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

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

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

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

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

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

SQL提示

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

但是force是强迫它使用

覆盖索引

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

前缀索引

n为前缀的长度

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

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

相关推荐
叁沐20 分钟前
MySQL 07 行锁功过:怎么减少行锁对性能的影响?
mysql
Java烘焙师1 小时前
架构师必备:业务扩展模式选型
mysql·elasticsearch·架构·hbase·多维度查询
飞翔的佩奇1 小时前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
@Ryan Ding1 小时前
MySQL主从复制与读写分离概述
android·mysql·adb
ZWZhangYu7 小时前
LangChain 构建向量数据库和检索器
数据库·langchain·easyui
feifeigo1238 小时前
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
数据库·mysql·adb
火龙谷9 小时前
【nosql】有哪些非关系型数据库?
数据库·nosql
焱焱枫10 小时前
Oracle获取执行计划之10046 技术详解
数据库·oracle
qq_3923971212 小时前
Redis常用操作
数据库·redis·wpf
A__tao13 小时前
一键将 SQL 转为 Java 实体类,全面支持 MySQL / PostgreSQL / Oracle!
java·sql·mysql