mysql组合索最左_MySQL组合索引和最左匹配原则
可以看到該查詢使用到了索引
EXPLAIN SELECT * FROM student WHERE id = 2 AND name = ‘defghijk‘ and age = 8;
可以看到該查詢使用到了索引
EXPLAIN SELECT * FROM student WHERE id = 2 AND age = 8;
可以看到該查詢使用到了索引
EXPLAIN SELECT * FROM student WHEREname =‘defghijk‘ AND age = 8;
可以看到該查詢沒有使用到索引,類型為index,查詢行數為4989449,幾乎進行了全表掃描,由于組合索引只針對最左邊的列進行了排序,對于name、age只能進行全部掃描
EXPLAIN SELECT * FROM student WHERE name = ‘defghijk‘ AND id = 2;
EXPLAIN SELECT * FROM student WHERE age = 8 AND id = 2;
EXPLAIN SELECT * FROM student WHERE name = ‘defghijk‘ and age = 8 AND id = 2;
可以看到如上查詢也使用到了索引,id放前面和放后面查詢到的結果是一樣的,MySQL會找出執行效率最高的一種查詢方式,就是先根據id進行查詢
總結
如上測試,可以看到只要查詢條件的列中包含組合索引最左邊的那一列,不管該列在查詢條件中的位置,都會使用索引進行查詢。
MySQL組合索引和最左匹配原則
標簽:RoCE???lin???查詢方式???ble???存在???number???測試表???roc???where
本條技術文章來源于互聯網,如果無意侵犯您的權益請點擊此處反饋版權投訴
本文系統來源:https://www.cnblogs.com/hnusthuyanhua/p/13153858.html
總結
以上是生活随笔為你收集整理的mysql组合索最左_MySQL组合索引和最左匹配原则的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java i=(int)b_定义类B和类
- 下一篇: java ftp下载文件 慢_java实