91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySql學習筆記(九):索引失效

發布時間:2020-07-13 05:17:26 來源:網絡 閱讀:421 作者:櫻桃mayue 欄目:MySQL數據庫

數據準備:

CREATE?TABLE?`t_blog`?(
??`id`?int(11)?NOT?NULL?auto_increment,
??`title`?varchar(50)?default?NULL,
??`typeId`?int(11)?default?NULL,
??`a`?int(11)?default?'0',
??PRIMARY?KEY??(`id`),
??KEY?`index_1`?USING?BTREE?(`title`,`typeId`,`a`)
)?ENGINE=InnoDB?DEFAULT?CHARSET=utf8

1、復合索引丟失第一列字段:
MySql學習筆記(九):索引失效

2、復合索引,跳過中間字段:

先來看查詢條件只有第一列時的結果:

MySql學習筆記(九):索引失效

接下來執行跳過中間字段的情況:

MySql學習筆記(九):索引失效

此時索引確實生效,但key_len依舊是153,理論上查詢精度越大key_len會越大,但此時并沒有增大就表示條件【a='123'】上的索引并沒有用到。

復合索引應當遵守【最左前列原則】,即:查詢應該從索引的最左前列開始并且不能跳過中間列,一旦跳過某個列,該列之后的列上的索引都會失效

3、在索引上進行計算、函數、類型轉換等操作導致索引失效:
使用函數:

MySql學習筆記(九):索引失效

進行自動類型轉換,title定義的是varchar類型,但查詢時給他賦值int導致mysql會自動給他進行類型轉換導致索引失效

MySql學習筆記(九):索引失效

使用? + - * / 等計算

MySql學習筆記(九):索引失效

4、使用了范圍導致該索引之后的索引失效

先來看一下沒使用范圍的sql執行情況:

MySql學習筆記(九):索引失效

隨著查詢精度的增大,key_len增大,表示兩個條件的索引均有效,現在在范圍之后再添加一個查詢條件:

MySql學習筆記(九):索引失效

key_len依舊保持158,說明票【a=1】這個條件上的索引是失效的。

5、使用不等于操作(!= 或 <>)

MySql學習筆記(九):索引失效

6、使用 is not null?

MySql學習筆記(九):索引失效

7、使用前導模糊查詢

先來看后導查詢:

MySql學習筆記(九):索引失效

此時索引并沒有失效,再來看前后導模糊查詢:

MySql學習筆記(九):索引失效

此時索引已經失效,那么單獨使用前導查詢:

MySql學習筆記(九):索引失效

此時索引失效,因此,使用前導查詢會導致索引失效。

8、mysql不走索引會有更好的查詢性能時索引失效

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彭州市| 永顺县| 仙居县| 乡城县| 临城县| 利川市| 武宣县| 泰顺县| 庄河市| 道真| 盐源县| 肥西县| 黄平县| 隆昌县| 枣庄市| 城口县| 六安市| 渝中区| 平昌县| 尚义县| 油尖旺区| 金寨县| 苏尼特右旗| 香港| 淮安市| 黑龙江省| 长寿区| 罗源县| 东光县| 高雄县| 三台县| 蒙阴县| 梅河口市| 彩票| 德江县| 城口县| 博野县| 五华县| 岳西县| 兴文县| 海安县|