be_a_dancer
@be_a_dancer
Backend/Fullstack Developer

Каким образом корректно извлечь первый подходящий элемент массива jsonb в Postgresql?

Добрый день, коллеги. Немного запутался, требуется помощь.
Есть jsonb поле addresses вида [{"region": "Московская обл", "addressType": "юридический"}, {"region": "Обнинск", "addressType": "фактический"}].
Порядок элементов не гарантирован, как и обязательное их наличие.
Требуется извлечь только поле region для юридического адреса.
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега PostgreSQL
Седой и строгий
select data ->> 'region' as region
from some_table
cross join lateral jsonb_array_elements(some_jsonb_field) as t(data)
where data ->> 'addressType' = 'юридический';
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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