我是靠谱客的博主 无情冬瓜,最近开发中收集的这篇文章主要介绍mysql 3列索引_mysql多列索引,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1,数据库每次查询只能使用一个索引

2,假设数据 表T (a,b,c) rowid 为物理位置

rowid a b c

(1) 1 1 1

(2) 2 1 13

(3) 2 2 14

(4) 1 3 3

(5) 2 3 12

(6) 1 2 5

(7) 2 3 9

(8) 1 2 2

(9) 1 3 6

(10) 2 2 11

(11) 2 2 8

(12) 1 1 7

(13) 2 3 15

(14) 1 1 4

(15) 2 1 10

当你创建一个索引 create index xxx on t(a,b), 则索引文件逻辑上等同于如下

a b rowid

1 1 1

1 1 12

1 1 14

1 2 6

1 2 8

1 3 4

1 3 9

2 1 2

2 1 15

2 2 3

2 2 10

2 2 11

2 3 5

2 3 7

2 3 13

当select * from T where a=1 and b=3 的时候, 数据库系统可以直接从索引文件中直接二分法找到A=1的记录,然后再B=3的记录。

但如果你 where b=3 则需要遍历这个索引表的全部!

3,通过上面实例可知,索引类似goup,联合索引中下一个元素是在符合上一个元素条件记录中查找相关记录。

最后

以上就是无情冬瓜为你收集整理的mysql 3列索引_mysql多列索引的全部内容,希望文章能够帮你解决mysql 3列索引_mysql多列索引所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部