请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于mysql联合索引最左匹配原则的问题

老师好,我在测试mysql联合索引最左匹配原则时,建立(a,b,c)联合索引,按照我的理解select * from tb where a = '1' and b > '1' and c > '1';这个SQL匹配到b>1时就不会继续向右匹配了,所以是不会走(a,b,c)的。但是explain发现是走(a,b,c)了,是什么原因呢?

正在回答

插入代码

1回答

翔仔 2020-05-27 00:50:51

同学好,可以看看key_len 其实它用的是(a,b) 因为(a,b,c) 会有 (a)(a,b)(a,b,c)三个索引,但是并没有走(a,b,c)

https://juejin.im/post/5da53e04e51d45782f663c04


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号