手写 SQL 的一些思考
2026年9月11日1 分钟阅读1 次浏览
慢查询从哪里来
多数性能问题不是"SQL 太慢",而是索引缺失或查询了不需要的数据。
-- 只取需要的列,避免 SELECT *
SELECT id, title_zh, published_at
FROM post
WHERE published = 1
ORDER BY published_at DESC
LIMIT 10;
加索引的判断标准
- 出现在
WHERE、JOIN、ORDER BY中的高频列 - 区分度足够高(例如状态列区分度低,不适合单独建索引)
- 用
EXPLAIN验证,而不是凭感觉
小结
先测量,再优化。没有度量数据的优化,通常只是自我安慰。