加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql增加多个btree索引的方法

发布时间:2022-03-18 22:15:53 所属栏目:MySql教程 来源:互联网
导读:小编给大家分享一下mysql添加多个btree索引的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧! 目前大部分数据库系统及文件系统都采用B-Tree或其变种B+Tree作为索引结构。 1、B+树是一个平衡的多叉树,从根节点到每个叶子节点的高度值不
      小编给大家分享一下mysql添加多个btree索引的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
 
      目前大部分数据库系统及文件系统都采用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部分用到
 
看完了这篇文章,相信你对mysql添加多个btree索引的方法有了一定的了解。

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读