Как получить данные JSONB в дополнительных столбцах из Postgres - PullRequest
0 голосов
/ 06 октября 2018

У меня есть таблица, из которой я хочу получить два поля, одно из которых - JSONB со значениями JSONB в новых столбцах.

SELECT ID, ATTRIBS from EMPLOYEE;

Это возвращает мне вывод следующим образом.

   id  |                attribs
------------------------------------------------------------------------------------
 EM001 | {"Education": "C.A.", "Contact No": "6655448822", "Relative Name": "Ganga"}
 EM002 | {"Education": "M.E.", "Contact No": "6542349992", "Relative Name": "Yamuna"}

Я хотел бы получить следующий вывод

   id  | Education | Contact No | Relative Name
-----------------------------------------------
 EM001 | C.A.      | 6655448822 | Ganga
 EM002 | M.E.      | 6542349992 | Yamuna

Есть предложения, как мне это сделать?

1 Ответ

0 голосов
/ 06 октября 2018

Используйте оператор ->> для извлечения значений на основе ключа:

select id, 
       attribs ->> 'Education' as education,
       attribs ->> 'Contact No' as "Contact No",
       attribs ->> 'Relative Name' as "Relative Name"
from the_table
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...