SQL 格式化

在线美化或压缩 SQL,支持多种数据库方言。

什么是SQL 格式化?

SQL格式化工具用于把杂乱、压缩或从代码里复制出来的一行 SQL 语句,按照统一缩进和换行规则重新排版,让 SELECT、FROM、WHERE、JOIN 等关键字对齐、逗号分隔的字段各占一行,从而更容易阅读和检查逻辑。它同时支持反向操作——把格式化好的 SQL 压缩成一行,便于粘贴到日志、接口参数或压缩后的脚本文件中。 需要说明的是,格式化工具只处理语句的排版风格,不会校验 SQL 的语法正确性或执行结果,也不会连接数据库执行查询,纯粹是文本层面的美化和压缩。

为什么使用SQL 格式化?

典型场景包括:从服务端慢查询日志里复制出一行很长的 SQL,格式化后定位是哪个 JOIN 或子查询拖慢了性能;代码评审时把同事写的一行流 SQL 展开,检查 WHERE 条件和索引字段是否合理;把手写的多行 SQL 压缩成一行,粘贴进配置文件或通过接口传递。相比在 IDE 里格式化,在线工具无需安装插件,也不依赖具体的数据库驱动,支持在 MySQL、PostgreSQL、SQL Server、Oracle 等主流方言的常见语法之间切换缩进风格。

使用示例

压缩SQL展开

输入:SELECT id,name,age FROM users WHERE age>18 AND status='active' ORDER BY id DESC; 格式化后: SELECT id, name, age FROM users WHERE age > 18 AND status = 'active' ORDER BY id DESC;

多行SQL压缩

输入多行带缩进的 SELECT ... JOIN ... 语句,选择压缩模式后输出为去除多余空白和换行的单行 SQL,适合粘贴进 shell 命令或日志过滤条件里。

使用提示

粘贴前建议先确认SQL来源可信,格式化工具不会执行代码;如果SQL中包含字符串字面量里的分号或注释符号,个别边缘情况下换行位置可能不够理想,可手动微调。

常见问题

支持哪些 SQL 方言?
支持标准 SQL、MySQL、PostgreSQL、SQLite、SQL Server(T-SQL)、MariaDB,选择方言后再格式化可获得更贴合语法的排版。
压缩是怎么实现的?
先按方言格式化,再去除多余空白与换行折成单行,便于粘贴到日志或单行配置中。
数据会上传服务器吗?
不会。SQL 格式化与压缩均由浏览器本地的 sql-formatter 库完成,不发起任何网络请求。
会检查SQL语法是否正确吗?
不会。格式化只是重新排版关键字和缩进,不做语法解析校验,如果原始SQL有拼写错误或语法问题,格式化后依然存在,需要在数据库里实际执行才能发现。
支持哪些数据库方言?
支持MySQL、PostgreSQL、SQL Server、Oracle等主流方言的常见语法排版,但方言特有的函数或语法(如MySQL的反引号、PostgreSQL的双引号标识符)会尽量保留原样,不会自动转换成其他方言。
会不会把我的SQL发送到服务器?
处理在浏览器本地完成,输入的SQL内容不会上传,可放心格式化包含表名、字段名等信息的语句。
能处理存储过程或多条语句吗?
能处理由分号分隔的多条语句,会逐条格式化,但复杂的存储过程、触发器语法可能无法完美对齐,建议分段处理。

相关工具

相关教程

← 返回工具箱· 数据均在浏览器本地处理,不上传服务器。