Вывод строки в виде таблицы key-value в PostgreSQL
Допустим есть таблица Box с описанием характеристик ящиков
Box
Id | Длина | Ширина | Высота |
---|---|---|---|
1 | 10 | 20 | 30 |
2 | 15 | 25 | 35 |
3 | 55 | 65 | 75 |
Чтобы получить выборку по какой-либо записи из таблицы в виде key-value
, например, для записи с id = 3
, то есть получить такой результат
key | value |
---|---|
Id | 3 |
Длина | 55 |
Ширина | 65 |
Высота | 75 |
Сделать это можно следующим кодом:
select * from jsonb_each ( (select to_jsonb(b.*) from box b where b.id=3) ) s