01
1. 为什么要格式化 SQL
一行书写或由 ORM 生成的 SQL,随着连接(JOIN)增多会越来越难以阅读。按子句(SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY 等)换行并对齐缩进后,能一眼看出哪些表以什么条件连接、WHERE 条件是什么,从而加快代码审查和调试速度。
将通用SQL按子句换行并缩进。支持的SQL可以压缩为一行;压缩时会删除注释。关键字是否大写可自行选择。
此工具会格式化SQL,但不会验证SQL、确认数据库特定的兼容性或核实查询含义。
SQL仅在此设备上处理。
结果较长,仅显示开头部分。复制即可获取完整结果。
一行书写或由 ORM 生成的 SQL,随着连接(JOIN)增多会越来越难以阅读。按子句(SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY 等)换行并对齐缩进后,能一眼看出哪些表以什么条件连接、WHERE 条件是什么,从而加快代码审查和调试速度。
格式化器会在SELECT、FROM、WHERE和JOIN等子句前换行,并将AND和OR缩进一级,以区分不同条件。用逗号分隔的列表会分别放在单独的行上,括号内的内容会再增加一级缩进。它是基于令牌的格式化器,不是SQL验证器,也不是能解析所有方言的解析器。对于命名参数或厂商专用字面量等无法安全保留的语法,它会显示错误。如果出现这种情况,请不要修改查询,而是使用支持该语法的SQL工具处理原始查询。
压缩(minify)会去除注释,并消除多余的空白和换行,合并为一行。适用于将查询记录到日志、缩小存储过程/迁移脚本体积,或需要一行文本粘贴到其他工具时。字符串字面量(引号包裹的值)内的内容会原样保留,不会破坏数据本身。