目录一. 联合索引说明二. 那ac是否能用到索引呢?三. 思考四. 最左匹配原则的成因一. 联合索引说明 建立三个字段的联合索引 联合索引(a,b,c)相当于建立了索引:(a),(a
建立三个字段的联合索引
联合索引(a,b,c)相当于建立了索引:(a),(a,b),(a,b,c)
先给出结论:a可以命中联合索引(a,b,c),c无法命中,所以ac组合无法命中联合索引。
1.建立abc联合索引(province,city,district)
ac索引查询
SELECT * FROM user_address WHERE province = '广东'
AND district = '南雄市'
显示查询范围是ALL
2.直接建立ac两个字段得联合索引
SELECT * FROM user_address WHERE province = '广东'
AND district = '南雄市'
查询结果是ref走了索引,扫描的行数也从21行变成了13行
3.ab索引查询
查询范围为ref
结论
abc联合索引,ac中的c不能命中这三个字段的联合索引,a可以命中,所以possible_keys列会显示使用了联合索引
abc索引,acb会走索引吗?
到此这篇关于Mysql数据库索引的最左匹配原则的文章就介绍到这了,更多相关MySQL 索引最左匹配 内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: MySQL数据库索引的最左匹配原则
本文链接: https://www.lsjlt.com/news/157725.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-16
2024-05-16
2024-05-16
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0