← 返回工具箱
🗃 SQL格式化

粘贴 SQL 语句,一键格式化或压缩

结果将在此处显示

📖 SQL 格式化最佳实践

良好的 SQL 书写风格能够极大地提升代码的可读性和可维护性,尤其是在团队协作和代码审查时。无论是简单的查询还是复杂的多表关联,规范的格式都能帮助开发者快速理解语义。

主要格式化规则

规则说明示例
关键字大写SQL 关键字使用全大写,与用户标识符区分SELECTFROMWHERE
主子句换行SELECT / FROM / WHERE / JOIN 等主要子句单独占一行每个子句顶格或缩进对齐
列名缩进SELECT 后的列名列表相对主关键字缩进一级4 个空格或 1 个 Tab
括号对齐嵌套子查询的括号单独一行,内部内容缩进与外层语句保持层级关系
逗号前置/后置列名之间的逗号统一放在行末或行首,保持一致id,, id

常用 SQL 关键字分类

类别关键字
查询SELECT FROM WHERE GROUP BY HAVING ORDER BY LIMIT OFFSET
联接JOIN INNER JOIN LEFT JOIN RIGHT JOIN FULL JOIN CROSS JOIN ON
操作符AND OR NOT IN NOT IN LIKE BETWEEN IS NULL EXISTS
数据操作INSERT INTO VALUES UPDATE SET DELETE FROM
集合操作UNION UNION ALL INTERSECT EXCEPT
DDLCREATE TABLE ALTER TABLE DROP TABLE INDEX

格式化前后对比

-- 格式化前(压缩写法)
select u.id,u.name,o.total from users u left join orders o on u.id=o.user_id where u.status=1 and o.total>100 order by o.total desc limit 20

-- 格式化后
SELECT
    u.id,
    u.name,
    o.total
FROM users u
LEFT JOIN orders o ON u.id = o.user_id
WHERE u.status = 1
    AND o.total > 100
ORDER BY o.total DESC
LIMIT 20

SQL 注释规范

性能相关的书写建议

💡 小贴士:SQL 格式化不仅是美观问题,更是工程习惯。统一的格式风格能让 Code Review 时聚焦在逻辑变化而非格式差异上。推荐团队内部约定一套格式规范(例如 SQLFluffsql-formatter 的默认风格),并集成到 CI/CD 流程中自动检查,确保代码库风格一致。