视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
mysql如何添加多个btree索引
2020-11-09 08:34:52 责编:小采
文档
 目前大部分数据库系统及文件系统都采用B-Tree或其变种B+Tree作为索引结构。

1、B+树是一个平衡的多叉树,从根节点到每个叶子节点的高度值不超过1,而且同层级的节点间有指针相互链接

2、在B+树上的常规检索,从根节点到叶子节点的搜索效率基本相当,不会出现大幅波动,而且基于索引的顺序扫描时,也可以利用双向指针快速左右移动,效率非常高。

在mysql中,索引可以有效的提高查询效率,但在实际项目中有时候即使在where条件都加上索引,也不一定能够使用到索引

举个栗子:where id=3 and price>100;//查询id为3,100元以上的商品(id,price 分别为添加索引)

误区:只能用上id或price其中一个,因为是的索引,同时只能用上一个。

联合索引:在多列同时创建索引后,需要满足左前缀原则,才用到索引

以index(a,b,c)为例。(注意和顺序有关)

语句 | 是否使用索引

where a=3 是,只使用了a列

where a=3 and =5 是,使用了ab列

where a=3 and b=4 and c=5 是,使用了abc

where b=3 or c=4 否因为跳过a

where a=3 and c =4 a用到索引,c不能

where a=3 and b like 'hello%' a用到了,b部分用到

下载本文
显示全文
专题