跳转到正文

BigQuery 格式化工具

使用 BigQuery 规则格式化 Google BigQuery Standard SQL,支持反引号括起的 project.dataset.table 名称、三引号字符串和原始字符串、# 注释以及 @query 参数。QUALIFY 会另起一行,SELECT * EXCEPT 和 REPLACE 会保留在同一行,窗口子句会进行缩进。未闭合的字符串、注释和括号会报告所在行和列,帮助分析师和数据工程师检查查询。

重置

常见问题

支持哪些 BigQuery 语法?

可识别 `project.dataset.table` 这样的反引号名称、带反斜杠转义的单引号和双引号字符串、三引号字符串,以及带原始字符串前缀 r'' 和字节串前缀 b'' 的字符串。@named 参数和 @@system 变量会按原样保留。

格式化工具会保留哈希注释(#)吗?

支持。BigQuery 接受 # 注释以及 -- 和 /* */ 注释,三种注释都会保留在原处。

如何处理 QUALIFY?

QUALIFY 会像 WHERE 和 HAVING 一样另起一行。筛选条件会缩进到它的下方。

SELECT * EXCEPT 和 REPLACE 怎么处理?

当 EXCEPT 或 REPLACE 跟在星号后面时,会与星号保留在同一行。这样 SELECT * EXCEPT (col) 就不会被误认为 EXCEPT 集合运算。

数组和结构体会保持完整吗?

会。arr[OFFSET(0)] 这样的数组下标会按原样保留,STRUCT 和 ARRAY 构造函数的格式化方式与其他函数调用相同。

窗口函数会如何排版?

较长的 OVER 子句会展开为缩进代码块,其中 PARTITION BY 和 ORDER BY 各占一行。较短的子句则保留在同一行。

它会更改关键字的大小写吗?

不会。关键字、函数和名称会保留你输入时的大小写。只有空白字符和换行会改变。

会检测哪些错误?

未闭合的字符串、三引号字符串、反引号名称和块注释,以及不匹配的括号;每项都会标明行和列。查询不会发送到 BigQuery,也不会产生费用。

输入内容可以有多大?

每个请求最多 1 MB,每条语句最多 128 KB。包含多条语句的脚本会逐条格式化。

可以选择缩进方式吗?查询会被保存吗?

可使用 2 个或 4 个空格,也可使用制表符。查询只会在内存中格式化,绝不会保存。

关于 OneClick Pro

OneClick Pro 是一个免费的工具集合,包含超过 150 种网络工具,助你处理日常工作:转换图像和单位、格式化和验证代码、检查域名和 SEO,以及处理文本、日期和数字。所有工具均可免注册、免订阅使用;你输入的内容仅用于计算结果,绝不会被存储。你可以将它用作处理临时任务的快捷工具箱,也可以收藏每天都会用到的工具。