索引:
数据页:
record_type 记录类型 0: 普通记录,1:索引记录 2:最小记录 3:最大记录
next_record:下一条地址的偏移量。
列的值
其他信息
底层数据页存放用户数据,上层数据页存放索引值,聚簇索引存放的是主键。数据页根据next_record相连形成一颗B+树。 查找方式:根据索引进行二分查找,找到索引所在区间后向下进行查询直到找到叶子节点。再根据遍历查询用户数据。
二级索引: 利用非主键建立的索引。根据索引进行排序,数据页和聚簇索引一致。但叶子节点的用户数据为主键,使用二级索引查询主键后,再查询聚簇索引查询用户数据。
联合索引: 数据页中的列存放多个索引值。也是按照索引值进行排序的。和二级索引一样的是叶子节点存放的是主键。查询的过程会根据索引的顺序进行查询,比如建立联合索引的顺序是c1 c2 c3 数据页的构建结构 record_type next_record c1 c2 c3 page_no
所以查询联合索引需要遵循最左匹配原则。