mysql中怎么实现重复索引与冗余索引
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章将为大家详细讲解有关mysql中怎么实现重复索引与冗余索引,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。重复索引:表示一个列或者顺序相同的几个
千家信息网最后更新 2026年11月01日mysql中怎么实现重复索引与冗余索引
这篇文章将为大家详细讲解有关mysql中怎么实现重复索引与冗余索引,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
重复索引:表示一个列或者顺序相同的几个列上建立的多个索引。
冗余索引:两个索引所覆盖的列重叠
冗余索引在一些特殊的场景下使用到了索引覆盖,所以比较快。
场景
比如文章与标签表
+--+---+--+
| id | artid | tag |
+--+---+--+
| 1 | 1 | PHP |
| 2 | 1 | Linux |
| 3 | 2 | MySQl |
| 4 | 2 | Oracle |
+--+---+--+
在实际使用中, 有2种查询
artid-查询文章的-tag
tag-查询文章的 -artid
SQL语句:
select tag from t11 where artid=2;select artid from t11 where tag='PHP';
我们可以建立冗余索引,来达到索引覆盖的情况,这样的查询效率会比较高。
1、建立一个文章标签表
这个表中有两个索引,一个是at,一个是ta,两个索引都用到了artid和tag两个字段。
CREATE TABLE `t16` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `artid` int(10) unsigned NOT NULL DEFAULT '0', `tag` char(20) NOT NULL DEFAULT '', PRIMARY KEY (`id`), KEY `at` (`artid`,`tag`), KEY `ta` (`tag`,`artid`)) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
2、测试两条SQL语句
select artid from t11 where tag='PHP';
这条语句的查询分析中的Extra有Using index,表示此处用到了索引覆盖,使用索引覆盖后就不需要回行查询数据,这样的查询效率比较高。
select tag from t11 where artid = 1;
这条语句的查询分析中的Extra有Using index,表示此处用到了索引覆盖,使用索引覆盖后就不需要回行查询数据,这样的查询效率比较高。
关于mysql中怎么实现重复索引与冗余索引就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
索引
查询
文章
冗余
两个
语句
效率
内容
场景
数据
更多
标签
知识
篇文章
分析
不错
特殊
相同
多个
字段
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网金融科技
金融科技还是互联网
互联网科技资迅
金融科技创新监管互联网金融
科技与互联网发展
易互联网科技有限公司
大白互联网科技
上海卓越科技 互联网
海南购全球互联网科技
上海电发互联网科技有限公司
福州新华互联网科技学校 知乎
南山科技园互联网公司有哪些
浙江互联网科技研学营
昊天互联网科技有限公司
广州富喜互联网络科技
互联网科技年终奖
2021世界互联网领先科技成果发布
互联网时代科技型公司的机会
中国新注册互联网科技
知域互联网科技有限公司官网
互联网科技公司的优势
没上市的科技互联网公司
深圳互联网科技公司
礼当家互联网科技
润盈互联网科技
济南和联互联网科技有限公司
团飞科技与伯堂互联网服务平台
崇明区互联网教育科技诚信经营
互联网科技圈年度人物
从那以后互联网科技有限公司