我收到以下错误
(100032) 执行查询作业时出错。消息:无法识别的名称:嵌套
nested我的临时表在哪里声明为 WITH 子句。尝试的代码如下:
WITH nested AS
(
SELECT e.my_id , SPLIT(secondary_ids, '<#>') AS arr_secondary_ids
FROM table_with_delimited_string_column e
WHERE my_id = 1234
)
SELECT DISTINCT a
FROM UNNEST(nested.arr_secondary_ids) a
Run Code Online (Sandbox Code Playgroud)
SPLIT 函数将返回一个 ARRAY 类型,该类型稍后将被取消嵌套。
从 Google Cloud 文档中,这是有效的:
SELECT *
FROM UNNEST(ARRAY<STRUCT<x INT64, y STRING>>[(1, 'foo'), (3, 'bar')]);
Run Code Online (Sandbox Code Playgroud)
这也有效:
WITH sequences AS
(SELECT 1 AS id, [0, 1, 1, 2, 3, 5] AS some_numbers
UNION ALL SELECT 2 AS id, [2, 4, 8, 16, 32] AS some_numbers
UNION …Run Code Online (Sandbox Code Playgroud)