tft每日頭條

 > 生活

 > 關鍵字記憶口訣

關鍵字記憶口訣

生活 更新时间:2024-12-03 05:49:36

關鍵字記憶口訣?索引失效問題是面試必問問題,因為索引失效的情況比較多,很多同學記不住,面試的時候回答不好我仔細研究了七七四十七天,設計了一句七字口訣,記住這句口訣,以後再遇到這個問題就可以拿滿分了,今天小編就來聊一聊關于關鍵字記憶口訣?接下來我們就一起去研究一下吧!

關鍵字記憶口訣(告訴你一句七字口訣)1

關鍵字記憶口訣

索引失效問題是面試必問問題,因為索引失效的情況比較多,很多同學記不住,面試的時候回答不好。我仔細研究了七七四十七天,設計了一句七字口訣,記住這句口訣,以後再遇到這個問題就可以拿滿分了。

七字口訣就是:

模 型 數 空 運 最 快

口訣字面意思就是,要運送一個産品模型的話,要用空運,不要用陸運和海運,數空運最快。叫做:模型數空運最快。

下面我拆開逐字講解一下:

模:模糊查詢的意思。like的模糊查詢以%開頭,索引失效。比如:

SELECT * FROM `user` WHERE `name` LIKE '%老猿';

型:代表數據類型。類型錯誤,如字段類型為varchar,where條件用number,索引也會失效。比如:

SELECT * FROM `user` WHERE height= 180;

height為varchar類型導緻索引失效。

數:是函數的意思。對索引的字段使用内部函數,索引也會失效。這種情況下應該建立基于函數的索引。比如:

SELECT * FROM `user` WHERE DATE(create_time) = '2020-09-03';

create_time字段設置索引,那就無法使用函數,否則索引失效。

空:是Null的意思。索引不存儲空值,如果不限制索引列是not null,數據庫會認為索引列有可能存在空值,所以不會按照索引進行計算。比如:

SELECT * FROM `user` WHERE address IS NULL不走索引。

SELECT * FROM `user` WHERE address IS NOT NULL;走索引。

建議大家這設計字段的時候,如果沒有必要的要求必須為NULL,那麼最好給個默認值空字符串,這可以解決很多後續的麻煩(切記)。

運:是運算的意思。對索引列進行( ,-,*,/,!, !=, <>)等運算,會導緻索引失效。比如:

SELECT * FROM `user` WHERE age - 1 = 20;

最:是最左原則。在複合索引中索引列的順序至關重要。如果不是按照索引的最左列開始查找,則無法使用索引。

快:全表掃描更快的意思。如果數據庫預計使用全表掃描要比使用索引快,則不使用索引。

這就是索引失效的七字口訣,請大家點贊之後默念三遍,模型數空運最快。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved