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)

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

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

示例:

相关推荐
kk”2 小时前
Linux的组和权限管理
linux·运维·服务器
智购科技智能售货柜3 小时前
2026自动售货机整机可靠性测试:从高低温交变到EMC电磁兼容的认证工程实践~YH
运维·服务器·数据库·人工智能·物联网
ltl3 小时前
RocksDB 架构演进:相对 LevelDB 的 diff 地图
数据库
ltl3 小时前
存储读取性能优化:索引、Bloom Filter 与读放大
数据库
吃着火锅x唱着歌3 小时前
Effective C++ 学习笔记 条款43 学习处理模板化基类内的名称
c++·笔记·学习
酒神dnspup4 小时前
CDN 回源检测怎么做?用 DNSPup 验证节点命中、源站暴露与多地可用性
运维·服务器·网络·网络协议·tcp/ip
weixin_431600444 小时前
Agent Workflow 学习向:Code 节点,比模板更强的变量加工
后端·python·学习·ai·
Rain的Java大神之路4 小时前
短信接口被狂刷怎么处理
java·运维·后端·web安全·面试·架构·xss
江南风月5 小时前
3分钟快速上手日志审计系统 WGLOG v2.2 更新了什么
运维·服务器·网络
孙克旭_5 小时前
Docker 镜像构建|Vue+SpringBoot+Go 多语言项目 Dockerfile 案例
linux·运维·vue.js·spring boot·docker·dockerfile