1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > mysql索引有几种_MySQL有哪些索引类型 ?

mysql索引有几种_MySQL有哪些索引类型 ?

时间:2021-10-26 05:19:07

相关推荐

mysql索引有几种_MySQL有哪些索引类型 ?

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.

/doc/refman/5.6/en/create-index.html

InnoDB和MyISAM支持BTREE和FULLTEXT索引 ,MEMORY支持HASH和BTREE索引.

CREATE TABLE lookup (id INT) ENGINE = MEMORY;

CREATE INDEX id_index ON lookup (id) USING BTREE;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。