前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >二十七、冗余和重复索引

二十七、冗余和重复索引

作者头像
喵叔
发布于 2022-05-06 10:27:01
发布于 2022-05-06 10:27:01
45700
代码可运行
举报
文章被收录于专栏:喵叔's 专栏喵叔's 专栏
运行总次数:0
代码可运行
一、冗余和重复索引

MySQL 中允许在相同的列上创建多个索引。重复索引是指在相同列上按照相同的顺序创建的相同类型的索引。冗余索引和重复索引有些不同,例如创建了索引(A,B),在创建索引(A)就是冗余索引。下面的例子是重复索引:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
create table test(
    id int not null primary key,
    A int not null,
    B int not null,
    UNIQUE(id),
    INDEX(id)
 ) ENGINE=InnoDB;

TIP:

  1. MySQL 需要单独维护重复索引和冗余索引;
  2. 优化器在优化查询时,也需要对每个索引进行过滤,也会影响性能;
  3. 表中的索引多,会影响对数据进行增删改的速度。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-06-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
性能优化-索引优化SQL的方法
重复索引: 重复索引是指相同的列以相同的顺序建立的同类型的索引,如下表中的 primary key和ID列上的索引就是重复索引
cwl_java
2020/02/13
7390
性能优化-索引优化SQL的方法
一个不留神,索引就创建重复了
相信没有人会故意创建重复的冗余的索引,很多重复和冗余的索引都是在不经意间创建的,今天松哥来和大家捋一捋这个问题。 因为我们日常在使用 MySQL 的过程中,基本上都是使用 InnoDB 引擎,所以接下来的讨论主要是基于 InnoDB 引擎的 B+Tree 索引来讨论,其他的哈希索引全文索引等不在讨论范围种。 1. 与联合索引重复 在前面的文章中,松哥通过好几篇文章和大家分享了联合索引,包括它涉及到的覆盖索引、前缀匹配等等,联合索引好用,但是对联合索引理解不到位的话,可能会创建出如下的重复索引: CREATE
江南一点雨
2022/03/08
3010
第8章_索引的创建与设计原则
🧑个人简介:大家好,我是 shark-Gao,一个想要与大家共同进步的男人😉😉
程序员Leo
2023/08/02
3350
第8章_索引的创建与设计原则
MySQL学习笔记(5) 增删改查,高级查询,和索引
索引是一个单独存储在磁盘上的数据库结构,它们存储着对数据表里的数据记录的应用指针。
张云飞Vir
2021/06/29
6860
Mysql进阶索引篇03——2个新特性,11+7条设计原则教你创建索引
前 言 🍉 作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端 🍌 专栏简介:mysql进阶,主要讲解mysql数据库进阶知识,包括索引、分库分表等 🌰 文章简介:本文将介绍索引的分类、创建、删除,Mysql8.0中索引的新特性,索引的设计原则 🍎 三连、互关必回,不回可私信哟 🥛 相关链接:大厂SQL面试真题大全 1、索引的声明与使用 1.1. 索引的分类 先介绍下索引的分类,方便后续介绍索引的创建与设计。 按照功能逻辑划分,索引主要有:普通索引、唯一索引、主键索引、全
半旧518
2022/10/26
1.3K0
Mysql进阶索引篇03——2个新特性,11+7条设计原则教你创建索引
MySQL索引实战附带存储过程
索引虽然是个可以提高查询效率的好东西,但是吗世间万物自然有好有坏,索引有索引的好处,自然就会有其不完美的地方,建立索引之后,MySQL除了维护数据文件之外自然又多了一份维护索引文件的任务,如果数据频繁的变动,维护两份索引文件的MySQL自然是有些招架不住。反馈的效率自然就会慢于没有索引的时候,索引文件自然是要有它落盘的地方,所以就要占用空间喽,虽然硬盘不贵但是这些都是要加进项目的预算哦。所以我们就要了解一下索引的特性才能有效地趋利避坏。
姜同学
2022/10/27
6790
MySQL索引实战附带存储过程
MySQL(四)|《千万级大数据查询优化》第一篇:创建高性能的索引(补充)
本文是MySQL(三)|《千万级大数据查询优化》第一篇:创建高性能的索引的一个补充。 主要包括如下几点:
黄小怪
2018/09/19
1.1K0
MySQL 索引
数据库索引是一种数据结构,用于加速数据库查询操作。它是一个单独的数据结构,存储了特定列的值以及指向包含这些值的数据行的指针。通过使用索引,数据库可以更快速地定位和检索数据,而不必扫描整个表。
恋喵大鲤鱼
2023/10/12
3230
【我在拉勾训练营学技术】mysql 索引面试再也不怕啦
mysql 索引我们在面试是必问的,刚好我在拉勾训练营学习了 mysql 索引的相关知识,这里整理下来,自己对MySQL 索引有了全面了理解,面试的时候再也不怕啦。
程序员爱酸奶
2020/09/23
6790
【我在拉勾训练营学技术】mysql 索引面试再也不怕啦
MySQL数据库原理学习(十七)
2). 针对于常作为查询条件(where)、排序(order by)、分组(group by)操作的字段建立索引。
用户1289394
2022/10/26
3100
MySQL数据库原理学习(十七)
MySQL-索引;视图「建议收藏」
MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。
全栈程序员站长
2022/09/16
1.4K0
MySQL-索引;视图「建议收藏」
MySQL - 索引详解
索引依托于存储引擎的实现,因此,每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。大多数存储引擎有更高的额限制。
battcn
2018/08/03
9660
MySQL - 索引详解
MySQL秘籍之索引与查询优化实战指南
最左前缀原则。不冗余原则。最大选择性原则。所谓前缀索引,说白了就是对文本的前几个字符建立索引(具体是几个字符在建立索引时去指定),比如以产品名称的前 10 位来建索引,这样建立起来的索引更小,查询效率更快!
千寻简
2025/01/03
1910
MySQL秘籍之索引与查询优化实战指南
MariaDB 创建索引
索引用于快速找出在某个列中有一特定值的行,如果不使用索引MySQL必须从第l条记录开始读完整个表,直到找出相关的行.表越大,查询数据所花费的时间越多,如果表中查询的列有一个索引,MySQL能快速到达某个位置去搜寻数据文件,而不必查看所有数据.
王瑞MVP
2022/12/28
3.3K0
Mysql数据库-索引
MySQL索引(index): 是帮助MySQL高效获取数据的数据结构,所以索引的本质就是数据结构!
Devops海洋的渔夫
2022/01/17
2.2K0
Mysql数据库-索引
两千字揭密 MySQL 8.0.19 三大索引新功能:隐藏索引,降序索引,函数索引
导读:本文详细介绍 MySQL 8.0.19 三大索引新功能,隐藏索引,降序索引,函数索引,结合其他同仁的技术应用案例,进一步进行验证改编,最后总结心得,希望对大家有帮助。
数据和云
2020/03/25
1K0
【入门级教程】MySQL:从零开始的数据库之旅
你是否对数据库充满好奇,却不知从何入手?你是否想学习如何使用MySQL,却苦于找不到合适的入门教程?别担心,这篇博客将带你从零开始,轻松掌握MySQL的基础知识和操作技巧。
千寻简
2024/10/24
5820
【入门级教程】MySQL:从零开始的数据库之旅
面试官:MySQL 唯一索引为什么会导致死锁?
insert ignore会忽略数据库中已经存在的数据(根据主键或者唯一索引判断),如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据.
蜗牛互联网
2022/10/31
1.7K0
MySQL 8.0新特性:隐藏索引
MySQL 8.0 支持隐藏索引(invisible index),也称为不可见索引。隐藏索引不会被优化器使用。它允许快速启用/禁用MySQL Optimizer使用的索引;主键不能设置为隐藏(包括显式设置或隐式设置)。
SEian.G
2021/04/07
1.5K0
相关推荐
性能优化-索引优化SQL的方法
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文