国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網 會員登陸 & 注冊

軟件測試 |BTREE索引與HASH索引

2023-07-28 16:36 作者:測吧測試開發(fā)  | 我要投稿

更多學習資料戳!!!

MEMORY 存儲引擎的表可以選擇使用 BTREE 索引或者 HASH 索引,兩種不同類型的索引各有其不同的適用范圍。HASH 索引有一些重要的特征需要在使用的時候特別注意,如下所示。

只用于使用=或<=>操作符的等式比較。

優(yōu)化器不能使用HASH索引來加速ORDER BY操作。

MySQL不能確定在兩個值之間大約有多少行。如果將一個MyISAM表改為HASH索引的MEMORY表,會影響一些查找的執(zhí)行效率。

只能使用整個關鍵字來搜索一行。

而對于BTREE索引,當使用>、<、>=、<=、BETWEEN、!=或者<>,或者LIKE'pattern'(其中‘pattern’不可以通配符開始)操作符時,都可以使用相關列上的索引。

下列范圍查詢適用于BTREE索引和HASH索引:

下列范圍查詢只適用于 BTREE 索引:

例如,創(chuàng)建一個和 city 表完全相同的 MEMORY 存儲引擎的表 city_memory:

當對索引字段進行范圍查詢的時候,只有 BTREE 索引可以通過索引訪問:

而 HASH 索引實際上是全表掃描的:

了解了 BTREE 索引和 HASH 索引不同后,當使用 MEMORY 表的時候,如果是默認創(chuàng)建的 HASH索引,就要注意 SQL 語句的編寫,確??梢允褂蒙纤饕?,如果一定要使用范圍查詢,那么在創(chuàng)建索引的時候,就應該選擇創(chuàng)建成 BTREE 索引。


軟件測試 |BTREE索引與HASH索引的評論 (共 條)

分享到微博請遵守國家法律
宁化县| 沅陵县| 静海县| 泗水县| 本溪市| 教育| 奎屯市| 佛冈县| 丹江口市| 西华县| 永胜县| 濉溪县| 竹山县| 文安县| 嘉祥县| 安达市| 化德县| 恩平市| 晋州市| 秦安县| 康保县| 濉溪县| 天峨县| 梁河县| 肃南| 双鸭山市| 繁峙县| 宁武县| 靖边县| 会东县| 昂仁县| 普格县| 金湖县| 梅州市| 元谋县| 通城县| 邻水| 和平县| 高碑店市| 旬阳县| 长沙县|