mysql的索引怎么用 mysql索引规则详解

关于MySQL复合索引的使用方法

MySQL的复合索引可以创建多个,每个复合索引可以包含一列或多列。复合索引使用的基本原则是左侧对齐原则。例如,复合索引包含A,B,C字段,实际相当于创建了5个索引,即:

创新互联服务项目包括潘集网站建设、潘集网站制作、潘集网页制作以及潘集网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,潘集网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到潘集省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

那么问题来了,如果我们创建两个复合索引,复合索引1:包含A,B,C列和复合索引2:包含B,C列,MySQL如何执行呢?

按照正常的逻辑,和复合索引的原则,应该能命中的索引是A_B_C_index,让我们拭目以待吧!

结果:和上次测试的不一致,这次虽然包含ABC三个列,但命中的索引是B_C_index

重要结论:当命中两个或者多个不同的复合索引时,按照创建顺序不同,MySQL会有不同策略来选取其中的一个复合索引。

MySql是怎么使用的索引,在哪些情况下会使用

MySql为以下这些操作使用索引:

1、为了快速查找匹配WHERE条件的行。

2、为了从考虑的条件中消除行。如果在多个索引之间选择一个,正常情况下,MySql使用找到行的最小数量的那个索引。

3、如果表有一个multiple-column索引,任何一个索引的最左前缀可以通过使用优化器来查找行。例如,如果你有一个 three-column索引在(col1, col2, col3),你能搜索索引在(col1), (col1, col2),和 (col1, col2, col3)。

「进阶」MySQL中如何使用索引

1、普通索引

这是最基本的索引,它没有任何限制。

2、唯一索引

它与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。

3、主键索引

它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引。

4、聚簇索引

聚簇索引的索引顺序就是数据存储的物理存储顺序,这样能保证索引值相近的元组所存储的物理位置也相近。

5、全文索引(FULLTEXT)

全文索引只能创建在数据类型为VARCHAR或TEXT的列上,建立全文索引后,能够在建立了全文索引的列上进行全文查找。全文索引只能在MyISAM存储引擎的表中创建。

实际工作使用中,索引可以建立在单一列上,称为单列索引,也可以建立在多个列上,称为组合索引。


分享标题:mysql的索引怎么用 mysql索引规则详解
文章链接:http://bzwzjz.com/article/dopdscc.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站建设 LED网站设计方案 定制网站建设多少钱 成都营销网站建设 成都网站设计 成都模版网站建设 成都网站制作 外贸网站建设 网站设计 成都网站设计 温江网站设计 响应式网站设计 公司网站建设 成都网站建设 重庆网站制作 营销网站建设 重庆网站建设 成都网站制作 成都网站制作 网站设计制作 成都响应式网站建设 成都定制网站建设