Я пытаюсь сделать стол из другого стола. Исходная таблица имеет строку, которая выглядит следующим образом:
------------------------
| col1 | col 2 | col 3 |
------------------------
| item | a,b,c | 1,2,3 |
------------------------
Я пытаюсь взять эту строку и поместить ее в таблицу следующим образом:
------------------------
| col1 | col 2 | col 3 |
------------------------
| item | a | 1 |
------------------------
| item | b | 2 |
------------------------
| item | c | 3 |
------------------------
Так что в основном я пытаюсь UNNEST две строки, разделенные запятыми одновременно. До сих пор лучшее, что я придумал, - это UNNEST каждого столбца в отдельности, а затем попытаться объединить две результирующие таблицы (с которыми я тоже борюсь), но в идеале я надеялся сделать это за один шаг.
Вот мой запрос на UNNEST по одной строке за раз:
SELECT
col1, col2, col3
FROM
tableName,
UNNEST(SPLIT(col2)) AS col2
Вот моя попытка сделать UNNEST как подзапрос, но он дает массу результатов:
SELECT sub.*
FROM (
SELECT
col1, col2, col3 AS col3
FROM
tableName,
UNNEST(SPLIT(col2)) AS col2
WHERE
randomCol = 'something'
) sub,
UNNEST(SPLIT(sub.col3)) AS col3