我正在尝试使用以下 PosgreSQL 语法设置带有常量表的 CTE:
WITH rates AS (
SELECT * FROM (
VALUES
(2017, 2018, 0.1),
(2016, 2017, 0.1),
(2015, 2016, 0.2),
(2014, 2015, 0.3)
) AS t(init, end, rate)
)
SELECT * FROM my_bq_table as my
JOIN rates as r ON my.year = r.init;
Run Code Online (Sandbox Code Playgroud)
但我明白了,Syntax error: Expected keyword JOIN but got ","因为显然 BigQuery 无法将语法识别VALUES [(tuple)]为与from-clausePostgreSQL 完全相同的语法。
实现类似 CTE 的最简单方法是什么?
考虑以下方法
WITH rates AS (
SELECT * FROM UNNEST([
STRUCT<init INT64, `end` INT64, rate FLOAT64>
(2017, 2018, 0.1),
(2016, 2017, 0.1),
(2015, 2016, 0.2),
(2014, 2015, 0.3)
])
)
SELECT * FROM rates
Run Code Online (Sandbox Code Playgroud)
带输出
| 归档时间: |
|
| 查看次数: |
1565 次 |
| 最近记录: |