postgres & jsonb, извлечение списка (в таблицу) - PullRequest
0 голосов
/ 01 июня 2018

У меня есть следующий список, хранящийся в объекте JSON в таблице jsonb:

[
  {
    "id": 123,
    "p": 1
  },
  {
    "id": 456,
    "p": 2
  },
  {
    "id": 789,
    "p": 3
  },
  {
    "id": 012,
    "p": 4
  },
  {
    "id": 345,
    "p": 5
  },
  {
    "id": 678,
    "p": 6
  },
  {
    "id": 901,
    "p": 7
  },
  {
    "id": 234,
    "p": 8
  },
  {
    "id": 567,
    "p": 9
  },
  {
    "id": 890,
    "p": 10
  },
  {
    "id": 1234,
    "p": 11
  },
  {
    "id": 5678,
    "p": 12
  },
  {
    "id": 9012,
    "p": 13
  }
]

Мне нужна таблица со столбцами id и p, здесь 13 строк.

1 Ответ

0 голосов
/ 01 июня 2018

Вот один вариант с использованием json_array_elements:

SELECT
    json_array_elements(data)->>'id' AS id,
    json_array_elements(data)->>'p' AS p
FROM yourTable;

Демо

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