Loading…
我们的 SQL 格式化器的强大功能
- 实时格式化:在您输入或粘贴时自动美化 SQL(可切换实时预览)
- 可自定义缩进:制表符或空格,缩进大小可调
- 支持 PostgreSQL、MySQL、SQL Server、BigQuery、Snowflake 等多种方言的智能格式化
- 智能关键字大小写(大写、小写或保留原样)
- 可选在多个查询间添加空行以提升可读性
- 优化 CTE、JOIN、CASE 表达式和子查询的视觉结构
- 上传 `.sql` 脚本文件,支持浏览器内联编辑
- 一键复制格式化后的查询到编辑器、IDE 或文档
- 通过现代 SQL 格式化引擎实现 100% 客户端执行——无需服务器,无日志记录
🛠️ 如何像数据库专家一样格式化 SQL for sql-formatter
1
1. 插入您的 SQL
将查询粘贴到编辑器中或从系统上传 `.sql` 文件。语法高亮帮助您快速浏览结构、别名和连接。
2
2. 配置格式化选项
选择您的 SQL 方言(PostgreSQL、MySQL、SQL Server、BigQuery、Snowflake 等),选择缩进方式(制表符或空格),调整缩进大小并设置关键字大小写(大写、小写或保留原样)。
3
3. 转换您的查询
点击 **格式化**(或依赖实时预览)将您的 SQL 重新排版为整洁、缩进良好的布局。复杂的 CTE、CASE 表达式和嵌套子查询变得更容易阅读。
4
4. 复制、编辑或保存
查看结果,如有需要在格式化编辑器中直接调整,然后将 SQL 复制回您的 IDE、笔记本、迁移脚本或文档中。
技术规格
SQL 方言支持
格式化工具通过现代 SQL 解析引擎理解广泛的 SQL 方言:
| 方言 | 支持级别 | 关键特性 |
|---|---|---|
| 标准 SQL | ✅ 完整 | 常见 ANSI SQL 结构 |
| PostgreSQL | ✅ 完整 | CTE、窗口函数、JSON 操作符、高级连接 |
| MySQL / MariaDB | ✅ 完整 | 反引号标识符、LIMIT/OFFSET、常见 MySQL 语法 |
| SQL Server (T-SQL) | ✅ 完整 | TOP、临时表、T-SQL风格函数 |
| SQLite | ✅ 完整 | 标准查询、简化方言 |
| Snowflake | ✅ 完整 | 数据仓库风格分析语法 |
| BigQuery | ✅ 完整 | 嵌套字段、UNNEST、分析查询模式 |
| Redshift | ✅ 完整 | 数据仓库分析,类似PostgreSQL |
| Oracle / PL/SQL | ✅ 部分 | 多种PL/SQL结构,典型SELECT/DDL格式化 |
| DB2、Hive、Spark、Trino/Presto、N1QL | ✅ 部分 | 常见模式的核心SELECT/DDL格式化 |
格式化选项(映射至工具逻辑)
用户界面控件直接连接至底层SQL格式化引擎:
| 选项 | 选择/范围 | 默认值 |
|---|---|---|
| 缩进风格 | 空格或制表符 | 空格 |
| 缩进大小 | 1–8个空格(使用空格时) | 2 |
| SQL方言 | 标准、PostgreSQL、MySQL、SQLite、T-SQL、Snowflake、BigQuery、Redshift、Hive、Spark、DB2、PL/SQL、N1QL、Trino/Presto | 标准SQL |
| 关键字大小写 | 大写、小写、保持原样 | 大写 |
| 查询间空行 | 0–5行 | 0 |
| 实时预览 | 开 / 关 | 开 |
行为与限制
格式化是确定性的且专注于布局:
| 方面 | 行为 | 备注 |
|---|---|---|
| 执行 | 从不执行SQL | 仅解析和重写文本布局。 |
| 最大输入大小 | 约 2 MB 的 SQL 文本 | 对于大型生成查询,请运行本地 CLI 格式化工具。 |
| 多语句 | 尊重语句终止符 (`;`) | 通过设置可在语句间添加可选空行。 |
| 幂等性 | 相同输入 → 相同格式化输出 | 可安全重复运行或在预提交钩子中使用。 |
命令行替代方案
想在本地工作流或 CI 管道中获得相同行为吗?使用 CLI 格式化工具:
所有平台
SQLFluff (Python,格式化 + 代码检查)
sqlfluff format --dialect postgres queries.sql使用方言感知规则格式化和检查 SQL。非常适合 CI 和样式强制执行。
带 SQL 解析器的 Prettier
npx prettier --parser sql --write queries.sql在 Web 和后台项目中使用一致的基于 Prettier 的 SQL 样式。
在预提交或 CI 中运行格式化工具,让拉取请求专注于逻辑,而非缩进争论。
实际应用场景
查询优化与调试
使复杂的分析查询更易于理解。
- 在调试前,重新格式化包含多个 JOIN 和 CTE 的 300 多行报告查询。
- 为团队在微服务间统一 SQL 样式指南的布局。
- 直观检查嵌套括号、CASE 表达式和子查询中的逻辑错误。
WITH revenue AS (
SELECT account_id, SUM(amount) AS total
FROM payments
WHERE created_at >= DATE '2024-01-01'
GROUP BY account_id
)
SELECT a.id, a.name, r.total
FROM accounts a
LEFT JOIN revenue r ON r.account_id = a.id
ORDER BY r.total DESC NULLS LAST;Documentation & Sharing
Present SQL cleanly in docs, wikis and code reviews.
- 为API和BI文档准备格式美观的SQL代码片段。
- 在提交到版本控制之前格式化迁移脚本。
- 与利益相关者和数据分析师分享可读性强的查询示例。
-- 之前:难以阅读
select id,name,created_at from users where status='active' and created_at>now()-interval '30 days';
-- 之后:格式化后
SELECT
id,
name,
created_at
FROM users
WHERE status = 'active'
AND created_at > NOW() - INTERVAL '30 days';分析、BI与数据科学
在笔记本和仪表板之间保持数据仓库和BI查询的一致性。
- 在保存到BI工具前格式化BigQuery/Snowflake SQL。
- 统一笔记本与生产流水线之间的查询风格。
- 将杂乱的团队查询整理后再转换为可重用的视图。
❓ Frequently Asked Questions
❓这个工具会执行我的SQL查询吗?
不会。格式化器从不连接数据库或运行您的查询,它仅对有效的SQL进行文本布局(缩进、大小写、换行)的解析和重写。
🔄我可以切换关键字的大小写吗?
可以。使用**关键字大小写**选项在UPPER(大写)、lower(小写)或保留原始大小写之间选择。此设置会一致地应用于所有识别的SQL关键字。
⚡实时格式化的速度如何?
对于典型查询(即使是1000+行),得益于优化的客户端SQL格式化引擎,格式化几乎是即时的。您可以根据偏好开启或关闭实时预览功能。
🔒我的敏感SQL数据安全吗?
安全。所有格式化完全在您的浏览器中进行——没有服务器调用、上传或日志记录。尽管如此,如果可以在本地格式化,您仍应避免在网络上粘贴高度机密的数据。
🧩如果我的SQL有语法错误会怎样?
如果输入内容过于畸形导致解析器无法处理,格式化器可能会返回错误或保留部分未更改。请修复明显的语法问题(如缺少逗号、括号不匹配等)后重试。
Pro Tips
Best Practice
调试复杂JOIN前先格式化——对齐的条件能让逻辑错误更明显。
Best Practice
使用大写关键字和小写标识符,实现团队间整洁一致的视觉效果。
Best Practice
将格式化器与如SQLFluff之类的检查工具结合使用,以发现反模式和特定方言的问题。
Best Practice
在此工具和您的CLI/CI格式化工具中使用相同的方言设置,以避免布局上的细微差异。
Additional Resources
Other Tools
- CSS 美化器
- HTML 美化器
- JavaScript 美化器
- PHP 美化器
- 颜色选择器
- 精灵图提取器
- Base64 解码器
- Base64 编码器
- C# 格式化器
- CSV 格式化器
- Dockerfile Formatter
- Elm 格式化器
- ENV 格式化器
- Go 格式化器
- GraphQL 格式化器
- HCL 格式化器
- INI 格式化器
- JSON 格式化器
- LaTeX 格式化器
- Markdown 格式化器
- Objective-C 格式化器
- Php Formatter
- Proto 格式化器
- Python 格式化器
- Ruby 格式化器
- Rust 格式化器
- Scala 格式化器
- Shell 脚本格式化器
- SVG 格式化工具
- Swift 格式化工具
- TOML 格式化工具
- Typescript Formatter
- XML 格式化工具
- YAML 格式化工具
- Yarn 格式化工具
- CSS 压缩器
- Html Minifier
- Javascript Minifier
- JSON 压缩器
- XML 压缩器
- HTTP 头部查看器
- PDF 转文本
- 正则表达式测试器
- 搜索引擎排名检查器
- Whois 查询