(1) 頻繁的作爲查詢條件的字段應該創建爲索引。
(2) 唯一性很差的字段不適合做索引(如:性別),因爲就算建立了索引,二叉樹也就只有一層,還是要大規模的進行表的掃描。
(3) 更新很頻繁的字段不適合作爲索引,因爲每次做dml操作的時候都會簡歷,修改或者刪除索引,這樣會耗時間,影響性能。
(4) 在列中有複合索引時,只要查詢條件使用了最左邊的列,索引一般就會被使用到。
複合索引:alter table dept add index my_index(dname,loc);//dname是左邊的列.。
(5) 模糊查詢 like '%a'是不會使用到索引的,'a%'是會用到索引的。
(6) 如果查詢條件裏面有 or時,兩個條件或者多個條件具有索引,纔會使用索引。
<=============================這裏name沒有索引================================>
<=============================這裏name有索引================================>
(7) 如果該列是字符串類型,一定要用引號('')引起來,否者索引不會生效。
(8)用join查詢代替嵌查詢,嵌套查詢不會使用索引。