MYSQL之b+tree和hash的区别简写
2021/9/26 19:14:58
本文主要是介绍MYSQL之b+tree和hash的区别简写,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
刚刚整理完MySQL的笔记,想起记录hash和b+tree的区别,
那么现在顺手写一下。
Hash索引是这样子的:
举个例子,比如有某个值,A,hash索引会把A转换成hash码存入hash表中,是无序的,大概就是下图这样子,hash的排序是根据hash码来排序,因此对饮的表数据是无序的
因此和B+tree不一样,区别如下:
hash不支持最左原则,b+tree支持。因为hash的联合查询是这样,比如where a=1 and b=2,是把 a=1 and b=2转成一个hash码来进行查询,如果换成 b=2 and a=1,那么hash码将完全不同,索引失效。
hash不支持范围查询,因为hash是无序的,和b+tree不一样,b树是有序的
hash不支持order by,因为是无序的
hash不支持模糊查询
hash在等值查询上效率比btree高,因为hash可以根据查询条件直接找到需要的数据
这篇关于MYSQL之b+tree和hash的区别简写的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-02MySQL 3主集群搭建
- 2024-12-25如何部署MySQL集群资料:新手入门教程
- 2024-12-24MySQL集群部署资料:新手入门教程
- 2024-12-24MySQL集群资料详解:新手入门教程
- 2024-12-24MySQL集群部署入门教程
- 2024-12-24部署MySQL集群学习:新手入门教程
- 2024-12-24部署MySQL集群入门:一步一步搭建指南
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解