mysql常見索引類型有哪些

mysql常見索引類型有:1、FULLTEXT;2、HASH;3、BTREE;4、RTREE。FULLTEXT為全文索引,目前只有MyISAM引擎支持。HASH索引可以一次定位,因此具有極高的效率。

mysql常見索引類型有哪些

Mysql目前主要有以下幾種索引類型:

(推薦教程:mysql教程

FULLTEXT,HASH,BTREE,RTREE。

詳細介紹:

1、FULLTEXT

即為全文索引,目前只有MyISAM引擎支持。其可以在CREATE table ,ALTER TABLE ,CREATE INDEX 使用,不過目前只有 char、VARCHAR ,TEXT 列上可以創建全文索引。

全文索引并不是和MyISAM一起誕生的,它的出現是為了解決WHERE name LIKE “%word%”這類針對文本的模糊查詢效率較低的問題。

2、HASH

由于HASH的唯一(幾乎100%的唯一)及類似鍵值對的形式,很適合作為索引。

HASH索引可以一次定位,不需要像樹形索引那樣逐層查找,因此具有極高的效率。但是,這種高效是有條件的,即只在“=”和“in”條件下高效,對于范圍查詢、排序及組合索引仍然效率不高。

3、BTREE

BTREE索引就是一種將索引值按一定的算法,存入一個樹形的數據結構中(二叉樹),每次查詢都是從樹的入口root開始,依次遍歷node,獲取leaf。這是MySQL里默認和最常用的索引類型。

4、RTREE

RTREE在MySQL很少使用,僅支持geometry數據類型,支持該類型的存儲引擎只有MyISAM、BDb、InnoDb、NDb、Archive幾種。

相對于BTREE,RTREE的優勢在于范圍查找。

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享