Mysql 索引失效

1. 主鍵失效

主鍵是int自增類型html

看以下2條sql:mysql


查詢條件沒有加引號,致使全表掃描,很是耗時。
還有一種狀況,若是索引是字符串類型,查詢條件沒有加引號也是會失效的
https://dev.mysql.com/doc/refman/5.5/en/type-conversion.htmlsql

2. 多表join查詢按照主表ID排序,索引失效

如圖,hotel_info 中二十多萬數據,連了3張關聯表,其中 hotel_supplier_vender_relationhotel_supplier_management 只有2條和4條數據。由於最開始是生成環境報的查詢速度慢的問題。由於表結構都同樣,最開始懷疑是mysql版本的問題,由於生成環境是5.6,而測試環境是5.7,比較5.7作了不少優化。測試

可是關於索引失效應該不是版本的問題,因而作了個實驗。將測試環境表結構和數據導一份到本地,將2張關聯表的數據不斷減小,當減小到每張表都爲7條的時候,奇蹟出現了。此時無論減小一條哪張表的數據,都會出現索引失效的問題。優化

此時能夠強制走索引,或者在表中增長數據均可以解決問題(ps:生成環境不是你想加就能加的)。
.net

相關文章
相關標籤/搜索