mysql 索引
1 问题:mysql 索引用的什么数据结构?
答:B+树
2 数据是存在叶子结点上,其它结点是否存储数据?
答:存在叶子结点。其它结点不存储数据。
3 索引回失效吗?什么情况下回失效,为什么会失效?
答A:索引会失效
答B:索引居左有效(最佳左前缀法则)。
答C:B+树无法判定顺序的时候就会失效。
解答:如下是个B+树的结构
name phone
name(Aname) phone(179****7890) name(Bname) phone(189****0987)
select * from table where phone = 135****5678
这个时候用phone查询显然B+树没法排序,所以索引失效。
索引失效的情况:%A%
https://www.cs.usfca.edu/~galles/visualization/Algorithms.html 动态数据演示
4 mysql 查找数据的具体过程
索引采用 聚集索引
先找主键索引----》唯一非空索引-----》隐式聚簇索引。
非主键索引存储的是地址通过地址找到 聚簇 索引上的数据。
浙公网安备 33010602011771号