标签:row name 事务 ble 二叉树 from 主键 区别 子节点
索引帮助mysql高效获取数据的数据结构,存储到磁盘,索引的文件存储形式与存储引擎相关。存储引擎:不同的表数据文件,在磁盘里以不同的组织形式存在,常见存储引擎有Innodb、MyISAM、memory 区别为:
如果建的是普通索引,B+树的叶子节点存储的不是整行数据,而是当前数据的主键,根据主键值,在主键的B+树查找数据,遍历两次。如果没有设置主键就找唯一健,如果唯一健也没有会找row_id。
select id from table where name=jay
如果你用name建了个普通索引,id又刚好是主键,那么这条语句就不用回表。
为了更高效的建立,使用组合索引。假如用age,gender创建组合索引,那么从左向右依次进行查找,先匹配age,再匹配gender
select * from table where age = 18 and gender = m
select * from table where age = 18 and gender = m
select * from table where gender = m
select * from table where age = 18
第三条不可以,因为先匹配的gender。第二条mysql会做优化,可以。
标签:row name 事务 ble 二叉树 from 主键 区别 子节点
原文地址:https://www.cnblogs.com/hhachi/p/12815241.html