以下的文章主要向大家介紹的是MySQL建立索引的時機,即在實際操作中那些情況的出現是不能讀MySQL數據庫進行建立索引,以下就是文章的詳細內容描述,望你在浏覽之後會對其相關內容有一個更好的了解。
到這裡我們已經學會了建立索引,那麼我們需要在什麼情況下建立索引呢?一般來說,在WHERE和JOIN中出現的列需要建立索引,但也不完全如此,因為MySQL只對<,<=,=,>,>=,BETWEEN,IN,以及某些時候的LIKE才會使用索引。例如:
- SELECT t.Name FROM mytable t LEFT JOIN mytable m ON t.Name=m.username WHERE m.age=20 AND m.city='鄭州'
此時就需要對city和age建立索引,由於mytable表的userame也出現在了JOIN子句中,也有對它MySQL建立索引的必要。
剛才提到只有某些時候的LIKE才需建立索引。因為在以通配符%和_開頭作查詢時,MySQL不會使用索引。例如下句會使用索引:
- SELECT * FROM mytable WHERE username like'admin%'
而下句就不會使用:
- SELECT * FROM mytable WHEREt Name like'%admin'
因此,在使用LIKE時應注意以上的區別。以上的相關內容就是對MySQL建立索引的時機的介紹,望你能有所收獲。