mysql索引有幾種 MySQL有哪些索引型別

2021-10-18 11:52:42 字數 1135 閱讀 5683

mysql索引型別:

索引是一種資料結構,可以是btree,rtree,或者hash結構.

btree適合用於查詢某範圍內的資料,可以很快的從當前資料找到下條資料.

rtree常用於查詢比較接近的資料.

hash結構則適用於隨機訪問的場合,查詢每條資料的時間幾乎相同.

顯然,若要查詢某個時間段的資料,用btree結構要比hash結構快得多.

另外還有fulltext(全文)和spatial(空間)這兩個索引型別.

檢視某個表中存在的索引型別:

use punbb;

select index_name, index_type

from information_schema.statistics

where table_name='pb_posts';

index_name index_type

primary btree

pb_posts_topic_id_idx btree

pb_posts_multi_idx btree

pb_posts_multi_idx btree

pb_posts_posted_idx btree

注:pb_posts是innodb型別表,預設索引為btree.

select index_name, index_type

from information_schema.statistics

where table_name='pb_online'

index_name index_type

pb_online_user_id_ident_idx hash

pb_online_user_id_ident_idx hash

pb_online_ident_idx hash

pb_online_logged_idx hash

注:pb_online是memory型別表,預設索引為hash.

innodb和myisam支援btree和fulltext索引 ,memory支援hash和btree索引.

create table lookup (id int) engine = memory;

create index id_index on lookup (id) using btree;

MySQL 中的索引有幾種

一 普通索引 最基本的索引,只是加快了查詢速度。二 唯一索引 與普通索引類似,不同的是 索引的列值必須唯一,但允許有空值,也就是 null,如果是組合索引,則列值的組合必須是唯一的。三 主鍵索引 即我們常用的主鍵 id,它是一種特殊的唯一索引,不允許有空值,一般在建表時同時建立主鍵索引。特點 1 一...

mysql幾種索引 mysql的幾種索引

為什麼建立索引後,速度就會變快?答 使用索引後,查詢是按二叉樹演算法來查詢到記錄 索引使用的注意事項 索引的代價 1.占用磁碟空間 2.對dml 新增 修改 刪除 操作有影響,變慢 在哪些列上適合新增索引 1.較頻繁的作為查詢條件字段應該建立索引 select from emp where empn...

MySQL的索引有哪幾種?

mysql索引的建立對於mysql的高效執行是很重要的,索引可以大大提高mysql的檢索速度。打個比方,如果合理的設計且使用索引的mysql是一輛蘭博基尼的話,那麼沒有設計和使用索引的mysql就是乙個人力三輪車。索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個表可以有多個單列索引,...