MySQL问题:什么是MySQL的中的最左匹配原则?

是指在复合索引中,查询条件需要按照索引列的顺序从最左侧列开始依次匹配。只有查询条件中的列按照索引的最左边列开始进行匹配,索引才能被有效使用,但有时虽然不是正常顺序,由于MySQL中存在优化器,会自动调整顺序,依旧能使用索引

联合索引的顺序

例如:联合索引(a,b,c)在B+Tree中的排序是:先按a的值排序,如果a的值相同的,则按b的值排序,如果b的值相同,在按c的值排序。

注意:如果遇到范围查询(>,<),就会停止匹配

如果遇到>=、between、like等范围查询,则不会停止匹配,原因:这些查询包含一个凳子判断,这样可以直接定位到某个数据,然后往后扫描即可。

如何设计联合索引?

也就是如何满足最左匹配原则的实现

高频查询字段放左侧,等值查询字段优先于范围查询字段。

相关推荐
Boilermaker199224 分钟前
【MySQL 进阶】高性能优化
数据库·sql·mysql
CoderOnly1 小时前
SQL,CROSS JOIN速度优化
数据库·sql·mysql
Highcharts.js1 小时前
入门指南|从文件到图表:Highcharts对接数据库(CSV、Excel)实现数据同步绘制图表
数据库·excel·数据同步·highcharts·数据对接·文件导入
老衲提灯找美女3 小时前
MySQL的增删改查功能合集
数据库·mysql·增删改查·增删改查详细用法
SelectDB4 小时前
Apache Doris 4.0.1 版本正式发布
数据库·apache
Doro再努力4 小时前
MySQL数据库07:分组查询与分类查询
数据库·mysql
Elastic 中国社区官方博客5 小时前
Elasticsearch:如何为 Elastic Stack 部署 E5 模型 - 下载及隔离环境
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
间彧5 小时前
SpringBoot + MyBatis-Plus + Dynamic-Datasource 读写分离完整指南
数据库·后端
静若繁花_jingjing6 小时前
NoSql数据库概念
数据库·nosql
间彧6 小时前
除了AOP切面,还有哪些更灵活的数据源切换策略?比如基于注解或自定义路由规则
数据库·后端