Re: jsonb : find row by array object attribute

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: jsonb : find row by array object attribute
Дата
Msg-id 15217.1546206430@sss.pgh.pa.us
обсуждение исходный текст
Ответ на jsonb : find row by array object attribute  (Rory Campbell-Lange <rory@campbell-lange.net>)
Список pgsql-general
Rory Campbell-Lange <rory@campbell-lange.net> writes:
> ... I can't work out how to return the whole row containing a desired
> people id value.

Something like this, maybe?

=# select * from x where
  '2003'::jsonb in (select jsonb_array_elements(j #>'{people}')->'id');
                        j                         
--------------------------------------------------
 {"a": 3, "people": [{"id": 2003}, {"id": 2005}]}
(1 row)

It's not too efficient though :-(

            regards, tom lane


В списке pgsql-general по дате отправления:

Предыдущее
От: Rory Campbell-Lange
Дата:
Сообщение: jsonb : find row by array object attribute
Следующее
От: Andrew Gierth
Дата:
Сообщение: Re: jsonb : find row by array object attribute