索引的常见模型?
哈希表:只适合等值查询
有序数组:查询最快,但更新数据成本太高
搜索树
InnoDB的索引为什么选择B+树?...InnoDB;
insert into t(id, name, k) values
(1, 'Java', 100),
(2, 'Python', 200),
(3, 'Go', 300),
(5, 'MySQL...上述语句中有两棵索引数,一棵是主键索引,另一棵为非主键索引。
主键索引和非主键索引的区别?...id = 5;
-- SQL2
select * from t where k = 500;
SQL1只需要搜索主键索引这棵B+树即可获得结果,但是SQL2需要先通过k索引树查到主键值,然后再去主键索引树查找最终的结果...该索引k覆盖了我们的查询需求,因此称之为覆盖索引。
最左前缀原则
B+树索引结构,可以利用索引的最左前缀来定位记录。索引项是按照索引定义里面出现的字段顺序进行排序。