@CenterJoin

Как парсить json?

В БД pgsql есть поле search со строкой json "{\"t_in\":[0],\"t_out\":[1]}"
Нужно извлечь все записи с t_in = 0 потому что значения этого параметра могут быть разными.
Не знаю как распарсить это. Буду признателен за помощь.
  • Вопрос задан
  • 345 просмотров
Пригласить эксперта
Ответы на вопрос 2
@galaxy
Есть тип jsonb, из него извлечь можно так:
create table t (f jsonb);
insert into t values ('{"t_in":[0],"t_out":[1]}');

# table t;
              f
-----------------------------
 {"t_in": [0], "t_out": [1]}

# select f->'t_in' from t;
 ?column?
----------
 [0]
(1 row)


Если поле имеет строковый тип:
select '{"t_in":[0],"t_out":[1]}'::jsonb->'t_in';
Ответ написан
vabka
@vabka
Токсичный шарпист
SELECT * FROM table WHERE search->'t_in'->0 = (0::jsonb)
Ответ написан
Ваш ответ на вопрос

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

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