mysql如何添加多个btree索引


本文摘自PHP中文网,作者anonymity,侵删。

目前大部分数据库系统及文件系统都采用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索引的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

浅谈mysql中的group by

mysql5.7.03更换至mysql 5.7.17的过程及问题解决

mysql如何查看连接数和连接状态

mysql修改字段类型有哪些?

mysql 数据类型和建库策略

mysql select 语句的基本用法

mysql运维之二进制日志

mysql用命令行如何设置主键

mysql触发器怎么写

链接mysql时2003错误怎么办

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...