数据库为什么不使用hash表? 以mysql为例 以mysql为例 mysql使用的是 B+tree,其优点就在 1.范围查找 2.更少的io代表更多的查找效率: hash表虽然是O(1)的查询效率,但是大量的数据会有大量的hash冲突,查询效率也会从O(1)退化到O(n)。(虽然即使千万数据 hash表还是效率高于B+tree)hash表并没有范围查找的方法,只能遍历全表。 如有错误欢迎指正