不喜欢广告? 去 无广告 今天
Stop Squinting at Messy SQL — Format It in Seconds
更新于
使用免费的 SQL Formatter 工具,将混乱的单行 SQL 查询转换为格式良好、可读的代码。美化或压缩 — 任您选择。
广告 · 消除?
我们都经历过。有人给你发了一个 SQL 查询,看起来像一只猫走在键盘上敲出来的。一行巨大的代码,没有缩进,关键字像纸屑一样散落——然后不知何故它 能工作。但要弄清楚 如何.
。无论你是要调试一个庞大的 JOIN,审查同事的代码,还是仅仅想弄明白三个月前你自己的查询(过去的你真是个麻烦精),格式正确的 SQL 能让一切都变得更容易。这就是 SQL 格式化程序 的作用。🔥
为什么格式化 SQL 实际上很重要
说实话——SQL 不在乎空格。你的数据库会愉快地执行一个 500 个字符的单行查询而不眨眼。但 你 不是数据库。你是一个有有限工作记忆和截止日期的人。
格式化的 SQL 为你提供:
- 可读性 — 一目了然地识别 WHERE 子句、JOIN 和子查询
- 更轻松的调试 — 找到遗漏的逗号或放错位置的括号
- 更好的代码审查 — 你的队友会感谢你
- 一致性 — 无论谁写的,每个人的 SQL 都看起来一样

怎么运行的
使用 SQL 格式化程序 很简单:
- 粘贴你的 SQL 到输入区域
- 选择你的风格 — 2 个空格,4 个空格,或制表符(不评判……好吧,如果你选择制表符可能有点)
- 切换大写关键字 如果你喜欢你的 SELECT, FROM, 和 WHERE 大声而自豪
- 点击格式化 然后观看魔法的发生
需要反过来?点击 缩小 将你的查询压缩成单行——非常适合配置文件、脚本或任何需要紧凑 SQL 的地方。
之前和之后
这是我们所说的转换类型:
之前(恐怖):
SELECT u.id, u.name, u.email, o.total FROM users u INNER JOIN orders o ON u.id = o.user_id WHERE o.total > 100 AND u.created_at > '2024-01-01' ORDER BY o.total DESC LIMIT 50;
之后(大厨亲吻): 🤌
SELECT
u.id,
u.name,
u.email,
o.total
FROM
users u
INNER JOIN orders o ON u.id = o.user_id
WHERE
o.total > 100
AND u.created_at > '2024-01-01'
ORDER BY
o.total DESC
LIMIT
50;
相同的查询。完全不同的感觉。
你会在什么时候使用它
- 调试生产查询 — 日志输出单行 SQL。格式化它,找到错误,拯救世界。
- 文档 — 文档中的干净 SQL 会让你(以及其他人)在未来感激不已
- 代码审查 — 停止眯着眼看 PR 中未格式化的查询
- 学习 — 如果你刚开始学习 SQL,格式化的查询更容易理解
- 迁移脚本 — 让那些长长的 ALTER TABLE 语句更易读
您可能喜欢的相关工具
如果你正在处理 SQL,你很可能也在处理其他格式。看看这些:
- JSON 格式化程序 — 当你的 API 响应需要同样的关注时
- XML 格式化程序 — 因为 XML 仍然存在(不幸的是)
- CSV 到 JSON 转换器 — 在格式之间移动数据
- 文本比较 — 比较两个查询以找出变化之处
- RegEx 测试器 — 在 SQL 本身不够用的那些时候
去格式化那个查询
生活太短暂,不值得为未格式化的 SQL 浪费时间。前往 SQL 格式化程序,粘贴你最棘手的查询,并赋予它应有的结构。你未来的自己会感谢你。💡
