MySQL 索引

MySQL 索引的常见类型总结

1)主键索引(PRIMARY KEY)

  • 唯一且非空(NOT NULL)

  • 一张表只能有一个主键

  • 自动创建一个 唯一索引

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

示例:

2)唯一索引(UNIQUE KEY)

  • 索引列的值必须唯一

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

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

示例:

3)普通索引(INDEX / KEY)

  • 无唯一性要求

  • 最常见的索引类型

  • 用于提高查询速度

示例:

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

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

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

  • 常用于组合查询的场景

示例:

5)全文索引(FULLTEXT)

  • 用于大文本搜索,如 TEXT、VARCHAR

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

  • 只有 MyISAM 与 InnoDB 5.6+ 才支持

示例:

6)空间索引(SPATIAL)

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

  • 使用 geometry/geography 等字段

7)前缀索引(Prefix Index)

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

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

示例:

相关推荐
晚风叙码4 分钟前
Linux 进程概念(上):从冯诺依曼到进程调度
linux·运维·计算机外设
江苏汉软6 分钟前
制造企业为什么需要MES
java·数据库·制造·mes系统·mes软件
心.c9 分钟前
从“加个缓存”到稳定上线:把 Redis 放回真实业务里
数据库·redis·ai·1024程序员节
benjormin13 分钟前
MySQL数据库基础
数据库·mysql
Z21-X14 分钟前
云原生运维笔记:硬核拆解OpenStack计算与存储——从主机聚合到Cinder挂载全流程
运维·笔记·学习·云原生·openstack
开开心心就好19 分钟前
电脑语音实时转文字工具,会议记录很省事
运维·服务器·前端·c#·ocr·perl·1024程序员节
坤坤子吖19 分钟前
Linux网络编程基础:从 MAC 到 IP,理解网络数据是怎么传输的
linux·网络·笔记·学习
磁场转动100万匹25 分钟前
Doris 学习(二):底层架构与三种数据模型深入解析
学习·架构
海绵宝宝转agent28 分钟前
Leetcode100+面经
java·笔记·学习·算法·leetcode·深度优先
前进的李工33 分钟前
Agent 学习笔记 01:从工具调用到 ReAct 循环
笔记·学习·llm·agent·react·工具调用