mysql索引btree和hash的区别

我们知道mysql索引可以大大提高检索的速度

索引用来快速寻找特定的数据值,如果没有索引,查询时需要遍历整张表。

索引的原理

1、把创建了索引的列内容排序

2、排序结果生成倒排表

3、在倒排表内容上拼上数据地址

4、在查询时,先找到倒排表内容,再取出地址,最后找到数据

btree和hash有什么区别

1、innodb存储引擎默认的索引是btree

2、btree可以用作范围查询,比如 >,>=,<,<=和between,hash只能对等查询 3、hash一次定位数据,btree总是从根到叶子节点,所以hash检索效率高 4、hash不支持使用索引排序 5、hash不支持模糊查询以及最左前缀匹配 6、hash一定要回表查询数据 7、hash等值查询效率不一定比btree高

    A+
发布日期:2022年04月13日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: