在线 SQL 格式化工具:支持 MySQL/PostgreSQL/SQLite/BigQuery 方言,关键字大小写可选,缩进可调。一键美化或压缩 SQL 语句。
摘要:免费的 SQL 格式化工具,支持 MySQL/PostgreSQL/SQL Server 等多种方言,自定义缩进与关键字大小写,本地运行。
本地工具可在 DevTools → Network 搜索输入内容,通常不会出现在请求中。
使用指南
同事甩来一段三行塞了十二个条件的 SQL、日志里挖出一条 2000 字符的查询——格式化是读懂它的第一步。本工具按方言重排缩进与换行、统一关键字大小写,并支持压缩为单行,纯本地处理,查询内容不出浏览器。
1. 格式化一条查询
- 粘贴 SQL(压缩的单行或缩进混乱的多行都行)。
- 选择方言:Standard SQL、MySQL、PostgreSQL、SQLite、BigQuery——方言影响关键字与标识符引用习惯。
- 按团队习惯调整缩进宽度与关键字大小写(UPPER 便于区分关键字与列名),格式化后复制;需要塞进日志或单行配置时用压缩。
2. 格式化救不了的两种「坏 SQL」
- SELECT * 加十二个 JOIN 的性能问题不会因排版变好——格式化只是让它变得「可读得下」,执行计划还得 EXPLAIN。
- 隐式类型转换、函数包列(WHERE YEAR(created) = 2024)这类索引杀手,格式化后会看得更清楚,但要靠改写才能修复。
3. 团队里的正确打开方式
把「格式化后再提交」变成团队约定:代码评审里没人想读排版噪音,diff 里混进格式变化会淹没真正的逻辑修改。与本站的 SQL Playground 搭配使用——格式化整理旧查询,Playground 验证新查询,一条龙。
4. 方言为什么重要
反引号、双引号、方括号在不同引擎里含义不同;LIMIT/OFFSET、TOP、FETCH 的写法也不互通。选错方言偶尔仍能「排版成功」,但关键字大小写与换行点可能不符合你目标引擎的可读习惯。拿不准时先选 Standard,再按目标库微调。本页当前覆盖上述五种方言,不等于覆盖所有厂商扩展。遇到专有函数排版怪异时,先确认方言是否选对,再考虑是否属于格式化器尚未覆盖的语法糖——那种情况以「人能读」为目标手工微调即可。
5. 审查前的排版清单
- 先格式化再读 WHERE/JOIN 条件,避免漏看被挤在同一行的 OR。
- 子查询与 CTE 缩进对齐后,更容易发现「过滤条件写错层」。
- 把格式化后的 SQL 贴进 diff 时,避免与逻辑修改混在同一提交。
6. 安全提醒(日志里的 SQL)
从生产日志复制出的 SQL 可能含业务字面量(手机号、邮箱、订单内容)。本页不上传,但你粘贴到聊天/工单时仍然会泄露。脱敏后再分享;需要反复调试的语句,优先换成参数化示例而不是带真实数据的完整语句。格式化后的 SQL 更适合贴进评审:审阅者能按缩进层次追 JOIN 与过滤条件,而不是在单行里左右横跳。压缩模式适合把语句塞进单行日志字段或某些只接受一行的配置项;人读与评审请始终用格式化结果。
7. 方言与报错怎么读
可按 MySQL / PostgreSQL / SQLite / BigQuery 等方言格式化,关键字大小写与缩进随选项变化。解析失败时关注行列定位,先去掉不支持的专有语法或临时注释再试。本页做排版与可读性,不执行 SQL、不连库;执行计划与权限问题仍在数据库侧排查。
常见问题
可以,格式化本身不出浏览器。但语句里的手机号、邮箱、订单内容等字面量不会被自动清理——分享到聊天或工单前请先脱敏;需要反复调试的语句,改写成参数化示例更稳妥。
当前支持 Standard SQL、MySQL、PostgreSQL、SQLite、BigQuery 五种方言,可调缩进宽度与关键字大小写(大写便于区分关键字与列名),并支持压缩为单行。方言影响关键字与标识符引用习惯,拿不准时先选 Standard。
反引号、双引号、方括号在不同引擎里含义不同,LIMIT/OFFSET、TOP、FETCH 写法也不互通。选错方言偶尔仍能排版成功,但换行点与引用习惯会不符合目标引擎;专有函数排版怪异时,先查方言是否选对。本页覆盖上述五种方言,不代表覆盖所有厂商扩展。
不能。SELECT * 加一堆 JOIN 的性能问题不会因排版变好,执行计划还得看 EXPLAIN。不过可读性有价值:函数包列(如 WHERE YEAR(created)=2024)、隐式类型转换这类索引杀手,格式化后更容易被看出来——修复仍要靠改写。
把「先格式化再提交」定为约定,diff 里混入排版变化会淹没真正的逻辑修改。评审前先格式化再读 WHERE/JOIN——被挤在同一行的 OR、写错层的子查询过滤条件,缩进对齐后更容易暴露。可搭配站内 SQL Playground:旧查询拿来格式化,新查询去 Playground 验证。
把语句塞进单行日志字段或只接受单行的配置项时。给人读、进评审请始终用格式化结果——审阅者能按缩进层次追 JOIN 和过滤条件,而不是在单行里左右横跳。
相关工具
相关文章
在线 SQL 格式化工具:美化和压缩 SQL 查询语句
按方言格式化/压缩 SQL(MySQL、PostgreSQL、SQLite、BigQuery)。diff 友好排版、ORM 日志整理,以及格式化器做不到的事。可衔接 CSV→SQL。
在线代码格式化工具:一键美化 JavaScript、HTML、CSS、SQL
学习如何用浏览器本地的代码格式化工具整理 JavaScript、HTML、CSS 与 SQL:缩进选项、解析错误行号、Format 与 Minify 体积对照,以及和 IDE Prettier 的分工。
在线 CSV 转 SQL 工具:将表格数据导入数据库
CSV 转 INSERT:空单元格→NULL、MySQL 反引号或 PostgreSQL 双引号、BOM 剥离、Markdown 竖线转义,以及与 COPY/LOAD 的分工。