MySQL 索引 —— 提升查询效率的核心
一、索引的作用
索引是 MySQL 的 “目录”,用于快速定位数据,大幅提升查询效率;但会增加插入 / 更新 / 删除的开销(需维护索引)。
二、索引类型
| 索引类型 | 关键字 | 适用场景 |
|---|---|---|
| 主键索引 | PRIMARY KEY | 主键字段(自动创建) |
| 唯一索引 | UNIQUE | 唯一字段(如用户名、订单号) |
| 普通索引 | INDEX | 普通查询字段(如年龄、性别) |
| 联合索引 | INDEX (字段 1, 字段 2) | 多字段联合查询(如 age+gender) |
三、索引操作
1. 创建索引
2. 查看索引
3. 删除索引
四、索引使用原则
适合加索引的字段:查询频繁、区分度高(如用户名)、作为 WHERE 条件的字段;
不适合加索引的字段:数据量小、更新频繁、重复度高(如性别);
联合索引遵循 “最左前缀原则”:查询条件需包含联合索引的第一个字段才会生效。
总结
索引是提升查询效率的关键,但需平衡查询和写入性能;
常用索引类型有主键索引、唯一索引、普通索引、联合索引;
联合索引需遵循最左前缀原则,避免无效索引。