Задать вопрос
be_a_dancer
@be_a_dancer
Backend/Fullstack Developer

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

Добрый день, коллеги. Немного запутался, требуется помощь.
Есть jsonb поле addresses вида [{"region": "Московская обл", "addressType": "юридический"}, {"region": "Обнинск", "addressType": "фактический"}].
Порядок элементов не гарантирован, как и обязательное их наличие.
Требуется извлечь только поле region для юридического адреса.
  • Вопрос задан
  • 146 просмотров
Подписаться 1 Средний 4 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик расширенный
    14 месяцев
    Далее
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    Мидл Python-разработчик
    6 месяцев
    Далее
Решения вопроса 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' = 'юридический';
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы