# #postgresql #google-bigquery
Вопрос:
у меня есть следующая схема таблицы:
я хочу преобразовать столбец items в строку json, но вывод TO_JSON_STRING-это не то, что мне нужно. когда я запускаю этот запрос, я получаю:
SELECT id, store, TO_JSON_STRING(items) AS items_json FROM nested_array_example
но мне нужно, чтобы items_json был:
{«стол»: «3», «лампа»: «7», «шведская вещь»: «729»}
есть ли способ сделать это в bigquery? вот запрос для создания данных таблицы:
INSERT INTO `project_name.data_seT_name.nested_array_example` (store, items, id) VALUES ("ikea", [("table","3"),("lamp","7"),("swedish_thing",'729'),("swedish_thing_made_in_china",'5723')], '1')
Ответ №1:
Рассмотрим следующий подход
select id, store, ( select '{' || string_agg(format('"%s": "%s"', name, value)) || '}' from t.items ) items_json from `project_name.data_seT_name.nested_array_example` t
если применить к образцам данных из вашего вопроса — вывод будет
Комментарии:
1. ты-легенда! спасибо тебе огромное!!!