不扯官方文档的片汤话,直接带你手撕MySQL四大索引类型,通过真实场景案例+避坑指南,让你真正掌握索引的应用精髓!
一、NORMAL索引:数据库优化的第一把利刃
1.1 本质揭秘
NORMAL索引(默认B-Tree结构)是MySQL的默认索引类型,采用平衡树结构组织数据,适用于等值查询和范围查询。
创建方式:
-- 单列索引
ALTER TABLE users ADD INDEX idx_email (email);
-- 组合索引(注意顺序!)
ALTER TABLE orders ADD INDEX idx_composite (user_id, order_date);
1.2 实战案例:电商订单查询优化
某电商平台的订单表有2000万数据,原始查询耗时2.3秒:
SELECT * FROM orders
WHERE user_id = 10086
AND order_date BETWEEN '2023-01-01' AND '2023-06-30'
ORDER BY total_amount DESC
LIMIT 10;
优化步骤:
-
创建组合索引:
ALTER TABLE orders ADD INDEX idx_user_date (user_id, order_date);
-
查询耗时降至48ms,执行计划