SQL 格式化
按数据库方言格式化 SQL 关键字,或压缩为单行
本地运行
loading…
关于此工具
从日志文件、ORM 调试输出或同事的单行查询里拿到一段 SQL,粘贴进来,格式化器会把它拆成缩进一致、清晰可读的子句。支持六种方言——标准 SQL、PostgreSQL、MySQL、SQLite、SQL Server 和 BigQuery——所以 TOP、反引号标识符、数组类型这些方言特有的语法都能正确格式化,而不是让解析器报错。
关键字大小写可以配置:全大写走经典路线,全小写迎合团队偏好,也可以完全保留原样。压缩模式则反其道而行——把格式化过的查询折叠成一行,去掉注释但让字符串字面量逐字节保持原样,这正是把 SQL 塞进 JSON 配置或 CLI 参数之前需要的。
查询里往往带着表名、字面量中的客户数据或基础设施线索。格式化完全在你的浏览器中运行,这些信息不会到达任何服务器。
常见问题
- 我该选哪种 SQL 方言?
- 选你的数据库说的那种——它决定标识符、字符串引号和方言关键字如何解析。只是做一般整理的话,标准 SQL 能覆盖公共核心。如果在你的数据库里合法的语法在这里报解析错误,通常就是该换方言的信号。
- 格式化会改变查询的行为吗?
- 不会。格式化只移动空白,以及在启用时调整关键字大小写——标识符和字面量的字节原样保留。所有支持的方言里 SQL 关键字都不区分大小写,SELECT 和 select 是同一条语句。
- 可以一次格式化多条语句吗?
- 可以——粘贴整个脚本,每条以 ; 结尾的语句会依次格式化,语句之间空一行。
- 压缩到底移除了什么?
- 行注释(--)和块注释(/* */)被丢弃,连续空白折叠成单个空格,逗号和括号周围的空格被去掉。单引号、双引号和反引号内的文本永远不会被碰,包括双写引号转义。