MySQL 索引

MySQL 索引的常见类型总结

1)主键索引(PRIMARY KEY)

  • 唯一且非空(NOT NULL)

  • 一张表只能有一个主键

  • 自动创建一个 唯一索引

  • 常用于标识每一条唯一记录(如 id)

示例:

2)唯一索引(UNIQUE KEY)

  • 索引列的值必须唯一

  • 允许 NULL 值(且多个 NULL 不冲突)

  • 一张表可以有多个唯一索引

示例:

3)普通索引(INDEX / KEY)

  • 无唯一性要求

  • 最常见的索引类型

  • 用于提高查询速度

示例:

4)组合索引(联合索引,Composite Index)

  • 多个字段联合建立的索引

  • 遵循最左前缀原则(Leftmost Prefix Rule)

  • 常用于组合查询的场景

示例:

5)全文索引(FULLTEXT)

  • 用于大文本搜索,如 TEXTVARCHAR

  • 适用于 自然语言搜索、模糊搜索

  • 只有 MyISAM 与 InnoDB 5.6+ 才支持

示例:

6)空间索引(SPATIAL)

  • 用于存储 GIS(地理信息)

  • 使用 geometry/geography 等字段

7)前缀索引(Prefix Index)

  • 对字符串的一部分建立索引

  • 提高效率、减少索引体积

示例:

相关推荐
爬山算法41 分钟前
Redis(160)Redis的安全问题如何解决?
数据库·redis·安全
1071042 分钟前
Docker学习笔记
笔记·学习·docker
落日漫游43 分钟前
Redis集群与MySQL的对比
数据库·redis·mysql
盐焗西兰花43 分钟前
鸿蒙学习实战之路 - 轮播图组件实现
学习·华为·harmonyos
Lovely Ruby44 分钟前
前端er Go-Frame 的学习笔记:实现 to-do 功能(一)
前端·学习·golang
无代码专家1 小时前
数字化转型下的订单管理全流程优化方案
大数据·运维·人工智能
crary,记忆1 小时前
Angular.json中的commonChunk 的作用
前端·javascript·学习·angular.js
我是海浪1 小时前
DB2数据库:批量导入(Import)导出(Export)加载(Load)
数据库
试着1 小时前
【投资学习】腾讯
人工智能·学习·业界资讯