У меня есть этот пример данных (из Афины)
SELECT DISTINCT m.key
FROM (VALUES JSON '{"name":"project1","completed":false}', JSON '{"name":"project1","completed":false}',JSON '{"name":"project1","completed":false}')
example_table(json_column)
CROSS JOIN UNNEST (map_keys(CAST(json_column AS map<varchar,json>))) AS m(key);
WITH dataset AS (
SELECT '{"name": "Susan Smith",
"org": "engineering",
"projects": [{"name":"project1", "completed":false},
{"name":"project2", "completed":true}]}'
AS blob
)
select * from dataset
Это сгенерирует следующий вывод.
{"name": "Susan Smith", "org": "engineering", "projects": [{"name":"project1", "completed":false}, {"name":"project2", "completed":true}]}
Я хочу извлечь Key из вывода.
Ожидаемый результат:
output
------
name
org
projects
Может ли кто-нибудь помочь в этом?
обновлено:
отредактировал этот вопрос с правильным JSON.