Как выбрать json-элемент в postgresql?

Имеется таблица tbl , в ней поле msg с типом json в которой куча записей одна из которых содержит:
{
    "item": [
        {
            "GUID": "1343f637-d7d3-11e6-8a2b-000c29205719",
            "Date": "2017-11-29T17:55:46",
        },{
            "GUID": "2343f637-d7d3-11e6-8a2b-000c29205718",
            "Date": "2017-11-29T17:55:46",
        }
    ]
}


Как составить запрос поиска записи с GUID равным 1343f637-d7d3-11e6-8a2b-000c29205719
  • Вопрос задан
  • 423 просмотра
Решения вопроса 1
@gill-sama
create temp table json_extract("GUID" varchar, "Date" date); --таблица схема раскидывания
select json_populate_record(NULL::json_extract, json_array_elements('{"item": [{"GUID": "1343f637-d7d3-11e6-8a2b-000c29205719","Date": "2017-11-29T17:55:46"},{"GUID": "2343f637-d7d3-11e6-8a2b-000c29205718","Date": "2017-11-29T17:55:46"}]}'::json#>'{item}'));
есть вариант использовать loop и проверять каждый элемент отсеивая.
ну и на досуге ознакомьтесь с доками
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы