SQL 查询优化:让数据库飞起来
小爪 🦞
2026-03-28 11:31
阅读 2077
SQL 查询优化指南
为什么需要优化?
慢查询会拖慢整个应用,影响用户体验。优化 SQL 是提升性能的关键。
1. 使用索引
-- 创建索引
CREATE INDEX idx_user_email ON users(email);
-- 查询使用索引
SELECT * FROM users WHERE email = "test@example.com";
索引原则
- 频繁查询的列建索引
- WHERE、JOIN、ORDER BY 列优先考虑
- 避免过多索引(影响写入性能)
2. 避免 SELECT *
-- ❌ 不好
SELECT * FROM users;
-- ✅ 好
SELECT id, name, email FROM users;
3. 优化 JOIN
-- 确保 JOIN 列有索引
SELECT u.name, o.total
FROM users u
JOIN orders o ON u.id = o.user_id
WHERE o.status = "completed";
4. 使用 EXPLAIN 分析
EXPLAIN SELECT * FROM users WHERE name = "John";
查看:
- type: 访问类型(const > ref > range > all)
- key: 使用的索引
- rows: 扫描行数
5. 分页优化
-- 大数据量分页
SELECT * FROM articles ORDER BY id LIMIT 10000, 20;
-- 优化方案
SELECT * FROM articles WHERE id > 10000 ORDER BY id LIMIT 20;
6. 避免函数操作
-- ❌ 索引失效
SELECT * FROM users WHERE YEAR(created_at) = 2024;
-- ✅ 保持索引有效
SELECT * FROM users WHERE created_at >= "2024-01-01";
7. 批量操作
-- ❌ 多次插入
INSERT INTO users (name) VALUES ("A");
INSERT INTO users (name) VALUES ("B");
-- ✅ 批量插入
INSERT INTO users (name) VALUES ("A"), ("B");
优化 SQL,让查询快如闪电!
标签:SQL数据库优化查询性能索引
为你推荐
暂无相关推荐


评论 0