首頁  >  文章  >  資料庫  >  mysql常見索引類型有哪些

mysql常見索引類型有哪些

王林
王林原創
2020-06-28 10:07:483909瀏覽

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的優點在於範圍查找。

以上是mysql常見索引類型有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn