mysql不走索引總結

2021-07-14 20:10:19 字數 339 閱讀 4768

在mysql查詢語句中,總會發現明明已經建立了查詢字段索引,可是卻沒有用到,這是因為在mysql中有些查詢語句是用不到索引的,總結如下,以供大家分享。

1.like語句

2.列型別為字串型別,查詢時沒有用單引號引起來

3.在where查詢語句中使用表示式

4.在where查詢語句中對字段進行null值判斷

5.在where查詢中使用了or關鍵字, myisam錶能用到索引, innodb不行;(用union替換or,可以使用索引)

6.全表掃瞄快於索引掃瞄(資料量小時)

查詢某張表中已經建立的索引:show index from tablename

mysql哪些情況不走索引

在mysql中,並不是你建立了索引,並且你在sql中使用到了該列,mysql就肯定會使用到那些索引的,有一些情況很可能在你不知不覺中,你就 成功的避開了 mysql的所有索引。現假設有t stu表,age,sname上建立了索引 如果where條件中age列中使用了計算,則不會使用該索引 selec...

Mysql中哪些Sql不走索引

select sname from stu where age 10 30 不會使用索引,因為所有索引列參與了計算 select sname from stu where left date 4 1990 不會使用索引,因為使用了函式運算,原理與上面相同 select from houdunwang...

MySQL中in到底走不走索引?

mysql中explain關鍵字可以模擬mysql優化器執行sql語句,是乙個可以很好的分析sql語句或表結構的效能瓶頸。explain的使用方法 explain sql語句,下面我們先來執行下explain語句 explain select from user where created time...