1. 程式人生 > >mysql索引失效的情況

mysql索引失效的情況

1、WHERE字句的查詢條件裡有不等於號(如:WHERE column!=...),MYSQL將無法使用索引;

2、WHERE字句的查詢條件裡使用了函式的列(如:WHERE DAY(column)=...),MYSQL將無法使用索引;

3、在JOIN操作中,主鍵和外來鍵的資料型別不相同,MYSQL將無法使用索引;

4、WHERE子句的查詢條件裡使用了比較操作符LIKE前置萬用字元%(如:LIKE "%ABC"),MYSQL將無法使用索引;

如果必須要使用like可以再表中新加一列存要like的列的值的反序值。 如:列A值是abcdefg,反值列B值是gfedcba。SQL語句:B like REVERSE(

”%abc“)。

5、在ORDER BY操作中,排序的列同時也在WHERE中時,MYSQL將無法使用索引;

6、如果某個資料列裡包含著許多重複的值,就算為它建立了索引也不會有很好的效果;