получить совпадения массива с json - PullRequest
0 голосов
/ 27 марта 2020

У меня есть поле в базе данных типа json:

[{"id": "1"}, {"id": "2"}, {"id": "3"}] 

, и мне нужно получить совпадения в json с массивом ["1", "2"] хотя бы для одного элемента.

1 Ответ

1 голос
/ 27 марта 2020

Примерно так:

select t.*
from the_table t
where exists (select *
              from jsonb_array_elements(t.the_column) as x(item)
                join jsonb_array_elements_text('["1", "2"]') as e(id)
                  on x.item ->> 'id' = e.id);

Онлайн пример

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...