当前位置: 首页 > news >正文

数据库索引(Mysql)

简述:数据库索引是加速数据检索,提高查询效率的一种数据结构

语法规则

创建索引

--通用语法规则
--[内容] 可选参数
--UNIQUE: 可选关键字,用于创建唯一索引,确保索引列的值是唯一的
CREATE [UNIQUE] INDEX 索引名
ON 表名(字段名,...)
[ASC | DESC];--ASC/DESC: 可选参数,指定索引是升序还是降序。默认是升序。

创建非唯一索引

CREATE INDEX idx_employee_name ON employees(name);

创建唯一索引

CREATE UNIQUE INDEX idx_employee_email ON employees(email);

创建符合索引(多字段(列))

CREATE INDEX idx_employee_name_age ON employees(name, age);

 删除索引

方法一:

DROP INDEX 索引名 ON 表名;

方法二:使用表名前缀

ALTER TABLE 表名 DROP INDEX 索引名;

查看索引

SHOW INDEX FROM 表名;

常见的索引原则

  • 1. 选择唯一性索引,唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录。
  • 2. 为经常需要排序、分组和联合操作的字段建立索引。
  • 3. 为常用作为查询条件的字段建立索引。
  • 4. 限制索引的数目: 索引并非是越多越好,创建索引也需要耗费资源,一是增加了数据库的存储空间,二是在插入和删除时要花费较多的时间维护索引尽量使用数据量少的索引
  • 5. 如果索引的值很长,那么查询的速度会受到影响。尽量使用前缀来索引
  • 6. 如果索引字段的值很长,最好使用值的前缀来索引。
  • 7. 删除不再使用或者很少使用的索引
  • 8. 最左前缀匹配原则,非常重要的原则。
  • 9. 尽量选择区分度高的列作为索引区分度的公式是表示字段不重复的比例
  • 10. 索引列不能参与计算,保持列干净:带函数的查询不参与索引。
  • 11. 尽量的扩展索引,不要新建索引
http://www.lryc.cn/news/342404.html

相关文章:

  • 异常-Exception
  • ctfshow——SQL注入
  • 第十三章 计算机网络
  • 商品详情 API 返回值说明
  • 层级实例化静态网格体组件:开启大量模型处理之门
  • 【网络知识】光猫、路由器 和 交换机 的作用和区别?
  • 初识Electron,创建桌面应用
  • AI编码时代到来?实现编程梦想的利器—Baidu Comate测评
  • 去中心化自治组织(DAO)
  • MySQL之多表查询
  • 极端天气频发,我们普通人如何保全自己
  • 直面市场乱价,品牌商家该如何解决?
  • Spring中的Bean相关理解
  • 操作系统实战(二)(linux+C语言)
  • 哪些情况下会触发MySQL的预读机制?
  • react使用谷歌人机验证
  • java JMH 学习
  • 本地运行AI大模型简单示例
  • 图像处理:时域、空域、频率的滤波介绍
  • TC8002D 是一颗带关断模式的音频功放IC
  • 深度学习之基于Vgg19预训练卷积神经网络图像风格迁移系统
  • MySQL:多表查询练习
  • # 从浅入深 学习 SpringCloud 微服务架构(八)Sentinel(1)
  • [微信小程序] 入门笔记2-自定义一个显示组件
  • YOLO代码复现
  • 使用fitten code插件(vscode),替换通义千问,识别需求中的输入输出
  • vue使用pdfjs-dist在电脑上展示PDF文件
  • 【网站项目】戒烟网站
  • 慢性软组织疼痛如何使用DMS深层肌肉刺激仪进行治疗?
  • 自动化测试常用工具