概念
1、BTree又叫多路平衡查找树。所有结点存储一个关键字。
非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树(简单说, 左边比自己小,右边比自己大)
特点
2、以B+树结构存储数据,大大加快了数据的查询速度
在范围查找的SQL语句中更加适合(顺序存储)
使用场景
全值匹配的查询SQL,如 where act_id= '1111_act'
联合索引汇中匹配到最左前缀查询,如联合索引 KEY idx_actid_name(act_id,act_name) USING BTREE,只要条件中使用到了联合索引的第一列,就会用到该索引,但如果查询使用到的是联合索引的第二列act_name,该SQL则便无法使用到该联合索引(注:覆盖索引除外)
匹配模糊查询的前匹配,如where act_name like '11_act%'
匹配范围值的SQL查询,如where act_date > '9865123547215'(not in和<>无法使用索引)
覆盖索引的SQL查询,就是说select出来的字段都建立了索引
以上就是mysql中BTree索引的理解,希望对大家有所帮助。更多mysql学习指路:
推荐操作系统:windows7系统、mysql5.8、DELL G3电脑