Bigquery 不能将别名与扁平表结合使用

Posted

技术标签:

【中文标题】Bigquery 不能将别名与扁平表结合使用【英文标题】:Bigquery can't use alias combined with a flatten table 【发布时间】:2016-06-29 00:18:22 【问题描述】:

出于一个奇怪的原因,在 Bigquery 中,我不能将别名与扁平表结合使用

例如以下作品:

SELECT A.ID FROM Table AS A

但以下给出:错误:找不到字段“A.ID”。

SELECT A.ID FROM FLATTEN(Table, Items) AS A

奇怪的是休闲工作

SELECT A.ID FROM FLATTEN(Table, Items) AS A
JOIN Table2 as B ON B.ID = A.ID

有人解释一下吗?谢谢

【问题讨论】:

【参考方案1】:

BigQuery 的旧版 SQL 在涉及表别名且没有 JOIN 的某些情况下经常会出现问题。在这一点上,像这样的别名问题不太可能在旧版 SQL 中得到解决。一般来说,BigQuery's standard SQL 具有更好的行为,始终支持表和字段别名,所以如果这种行为给您带来问题,我建议您至少看看标准 SQL。

此外,您不需要在第一个或第二个查询中为表设置别名。以下应该有效:

SELECT ID FROM FLATTEN(Table, Items)

【讨论】:

以上是关于Bigquery 不能将别名与扁平表结合使用的主要内容,如果未能解决你的问题,请参考以下文章

Bigquery:UNNEST 重复与展平表性能

将常规函数与 WINDOW 函数结合使用的 Google BigQuery SQL 问题

无法导出 Big Query 表

要在本地机器中提取为 JSON 的 Big Query 表

多个 Big Query 表或类似数据的单数表

从外部表读取与加载数据并在 Bigquery 中读取