我们有一个适用于 BigQuery 的旧版 SQL 的查询。我们如何用标准 SQL 编写它以使其工作?
SELECT Hour, Average, L.Key AS Key FROM
(SELECT 1 AS Key, *
FROM test.table_L AS L)
LEFT JOIN
(SELECT 1 AS Key, Avg(Total) AS Average
FROM test.table_R) AS R
ON L.Key = R.Key ORDER BY Hour ASC
目前它给出的错误是:
Equality is not defined for arguments of type ARRAY<INT64> at [4:74]
BigQuery 有两种查询模式:旧版 SQL 和标准 SQL。我们查看了BigQuery 标准 SQL 文档,也只看到了一个关于 BigQuery 中标准 SQL 连接的 SO 答案——但到目前为止,我们还不清楚可能需要进行哪些关键更改。
Table_L 看起来像这样:
Row Hour
1 A
2 B
3 C
Table_R 看起来像这样:
Row Value
1 10
2 20
3 30
期望的结果:
Row Hour Average(OfR) Key
1 A 20 1
2 B 20 1
3 C 20 1
我们如何重写这个 BigQuery Legacy SQL 查询以在标准 SQL 中工作?