🗄️

SQL 格式化

基于正则的 SQL 格式化器,对 SELECT、INSERT、UPDATE 等语句自动缩进与关键字大写。适合整理线上慢查询日志、Code Review 时让嵌套子查询更易读,DBA 与后端重构冗长脚本时提升可维护性。

输入 → 输出
12 行 · 221 字符
SQL输入
SQL输出
SELECT
  u.id,
  u.name,
  COUNT(o.id) AS orders
FROM users u
LEFT
JOIN orders o ON o.user_id = u.id
WHERE u.created_at > NOW() - INTERVAL 30 DAY
GROUP BY u.id, u.name
HAVING COUNT(o.id) > 5
ORDER BY orders DESC
LIMIT 100

关于 SQL 格式化

ORM 拼出来的或日志里抓到的 SQL 经常是挤成一长行的,关键字、字段、子查询全堆在一起难以阅读。本工具在浏览器本地对 SQL 进行格式化,自动换行、缩进、对齐关键字,让 SELECT、JOIN、WHERE 等结构层次分明,便于审阅和优化。语句全程在本机解析,含真实表名的查询不会上传服务器。 建议在日常开发中收藏本工具,遇到数据格式转换需求时即可快速打开使用。所有转换均在浏览器本地完成,数据不会上传,可放心粘贴敏感内容。

使用场景

  • 美化日志 SQL — 把日志里挤成一行的慢查询格式化,看清 JOIN 和子查询结构。
  • 审阅 ORM 输出 — 格式化 ORM 生成的 SQL,确认它是否产生了预期的查询。
  • 优化前梳理 — 把复杂查询排版清晰,定位多余的子查询或缺失的索引条件。
  • 统一团队风格 — 把同事写法各异的 SQL 统一缩进风格,方便 code review。
  • 教学讲解 — 把嵌套查询分层展开,向新人讲解执行逻辑与条件关系。

常见问题

会改变 SQL 的执行结果吗?

不会。格式化只调整空白、换行和缩进,不改动关键字、字段和逻辑,语义与执行结果完全一致。

支持哪些数据库方言?

对标准 SQL 以及 MySQL、PostgreSQL 等常见方言的语法都能良好排版。少数厂商特有语法可能不被完全识别,但通常不影响整体格式化。

关键字会被改成大写吗?

工具通常会把关键字统一为大写以提升可读性,字段名和值的大小写保持不变。

能压缩成一行吗?

本工具侧重美化排版。若需要把多行 SQL 压成单行用于嵌入代码,可手动去除换行,或在支持压缩的模式下处理。

注释会被保留吗?

常见的单行(--)和多行(/* */)注释一般会被保留并合理放置,但极个别位置的注释可能被重新换行,建议格式化后快速核对。

有浏览器兼容性要求吗?

本工具兼容所有现代浏览器(Chrome、Firefox、Edge、Safari),无需安装任何插件或扩展。

可以离线使用吗?

首次加载后,部分功能在离线状态下仍可使用。页面资源加载后,核心逻辑完全在浏览器本地运行,不依赖网络。