mysql索引不會命中的情況

zybing發表於2021-09-09
1.如果條件中有 or ,即使其中有條件帶索引也不會命中(這也是為什麼儘量少用or的原因)
2.like查詢是以%開頭,如果是int型索引不會命中,字元型的命中’test%'百分號只有在右邊才可以命中
3. 如果列型別是字串,那一定要在條件中將資料使用引號引用起來,否則不使用索引
4. 沒有查詢條件,或者查詢條件沒有建立索引
5. 查詢條件中,在索引列上使用函式(+, - ,*,/), 這種情況下需建立函式索引
6. 採用 not in, not exist
7. B-tree 索引 is null 不會走, is not null 會走
8.聯合索引遵循最左原則,不滿足的不會命中

驗證語句:EXPLAIN SELECT * from hc_e_recommend_content where game_id= ‘1809040100’ and recomend_id=357 LIMIT 10;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/855/viewspace-2815816/,如需轉載,請註明出處,否則將追究法律責任。

相關文章