OpenReplay Logo
12k
12k

SQL 格式化工具

为所有主流方言格式化、美化和压缩 SQL——在浏览器中本地处理,所以你的查询永远不会离开你的设备。

关键字大小写
在本地处理

关于此工具

SQL 格式化器在不改变查询行为的前提下,规范其空白、缩进和关键字大小写。它把你的 SQL 解析成标记(token),再以一致的换行和两空格缩进重新输出,使 SELECT、JOIN、WHERE 和 GROUP BY 等子句可预测地对齐。本工具支持标准 SQL,以及针对 PostgreSQL、MySQL、SQLite、BigQuery、Snowflake 和 SQL Server 的方言专属规则,并允许你把关键字强制为 UPPER、lower 或保留其原始大小写。

用它清理从 ORM 日志中复制来的单行查询,让一条密集的生成语句在 pull request 中可供审阅,或统一团队 SQL 文件中的大小写。Minify 按钮做的是相反的事——它把格式化的查询折叠回单行并去除注释,同时保持引号字符串中的内容不变——这在把紧凑的查询粘贴进配置值或代码字符串时很方便。

格式化只重新排布空白和大小写——它绝不会对照真实 schema 校验你的查询是否正确,而压缩会有意保留引号字符串字面量内部的空格。

常见问题

本格式化器支持哪些 SQL 方言?

它支持标准 SQL、PostgreSQL、MySQL、SQLite、BigQuery、Snowflake 和 SQL Server(Transact-SQL)。每种方言都应用各自的关键字和语法规则,使输出符合该引擎的约定。

格式化会改变我的 SQL 查询的行为吗?

不会。格式化只调整空白、缩进和关键字大小写——查询的标记和逻辑保持不变,所以格式化后的查询与原始查询的运行结果完全一致。

压缩 SQL 会去除我字符串值内部的空格吗?

不会。压缩只在引号字符串之外折叠空白并去除注释,因此像 'a b' 这样的字面量会保留其内部空格,而内嵌的类似注释的文本也会原样保留。