Давайте рассмотрим следующую таблицу в Google BigQuery:
WITH example AS (
SELECT 1 AS id, ["{\"id\":1, \"name\":\"AAA\"}", "{\"id\":2, \"name\":\"BBB\"}","{\"id\":3, \"name\":\"CCC\"}"]
UNION ALL
SELECT 2 AS id, ["{\"id\":5, \"name\":\"XXX\"}", "{\"id\":6, \"name\":\"ZZZ\"}"]
)
SELECT *
FROM example;
Я хотел бы составить запрос, который будет возвращать имена с идентификатором родительской строки.
нравится:
Я пытался использовать unnest с функциями json, и я просто не могу сделать это правильно.
Может кто-нибудь мне помочь?
Спасибо Я делаю
Согласно вашему запросу, у вас уже есть элементы json в вашем массиве. Таким образом, с помощью unnest вы можете использовать json-функция, например json_value
, для извлечения атрибута имени ваших элементов.
select
id,
json_value(elt, '$.name')
from example, unnest(r) as elt;