默认情况下MySQL都是使用B-tree索引。来谈一下Hash索引的缺陷:
1 只能处理’=‘ 这种where 子句,而对于< >是无能为力的。 这和B-tree索引是有序的,Hash无序的有关。
2 无法处理order by。 原因同上。
3 无法得知两行之间的距离。 原因同上。
4 只能搜完整的字段,不能只搜字段的一部分。 而对于B-tree索引, 支持搜索字符串最左边的一部分。例如"police%" 。
默认情况下MySQL都是使用B-tree索引。来谈一下Hash索引的缺陷:
1 只能处理’=‘ 这种where 子句,而对于< >是无能为力的。 这和B-tree索引是有序的,Hash无序的有关。
2 无法处理order by。 原因同上。
3 无法得知两行之间的距离。 原因同上。
4 只能搜完整的字段,不能只搜字段的一部分。 而对于B-tree索引, 支持搜索字符串最左边的一部分。例如"police%" 。