1,<>
2,單獨的》,<,(有時會用到,有時不會)
3,like 「%_」 百分號在前.
4,表沒分析.
5,單獨引用復合索引裡非第一位置的索引列.
6,字元型字段為數字時在where條件裡不新增引號.
7,對索引列進行運算.需要建立函式索引.
8,not in ,not exist.
9,當變數採用的是times變數,而表的字段採用的是date變數時.或相反情況。
10, 索引失效。
11,基於cost成本分析(oracle因為走全表成本會更小):查詢小表,或者返回值大概在10%以上
12,有時都考慮到了 但就是不走索引,drop了從建試試在
13,b-tree索引 is null不會走,is not null會走,位圖索引 is null,is not null 都會走
14,聯合索引 is not null 只要在建立的索引列(不分先後)都會走,
in null時 必須要和建立索引第一列一起使用,當建立索引第一位置條件是is null 時,其他建立索引的列可以是is null(但必須在所有列都滿足is null的時候),或者=乙個值;當建立索引的第一位置是=乙個值時,其他索引列可以是任何情況(包括is null =乙個值),以上兩種情況索引都會走。其他情況不會走。
oracel 建立索引原則
一 b tree索引 1.選擇索引欄位的原則 2.選擇建立復合索引 復合索引的優點 什麼情況下優化器會用到復合索引呢?a 當sql語句的where子句中有用到復合索引的領導欄位時,oracle優化器會考慮用到復合索引來訪問.b 當某幾個欄位在sql語句的where子句中經常通過and操作符聯合在一起...
mysql索引失效 常見mysql索引失效條件
使用索引的一般語句 1 where條件中有or,除非or的所有欄位都有索引,只要有乙個沒有索引,就不走索引 explain select from jf user ju where ju.user id or ju.superior1 yyy user id是主鍵,superior1是普通索引,結果...
mysql in 索引 失效 in 索引失效的問題
簡單的in查詢 索引失效 步驟1 檢查建立索引沒有 order status 欄位為普通索引的tinyint型別 2 檢查是否使用了使索引失效的語句 3 explain檢視執行計畫 而 in 1 時會走索引 5 檢視是否關閉的全域性的索引 comment顯示disabled則表示關閉了索引 show...