我有下表:
create table tickets (id integer, key text, value text);
insert into tickets values
(1, 'CUSTOMER_ID', 3242),
(1, 'AMOUNT', 49),
(1, 'MOVIE', 'TITANIC');
預期輸出:
{"CUSTOMER_ID": "3242", "AMOUNT": "49", "MOVIE": "TITANIC"}
如果表中的資料將存盤在單獨的列中,簡單的 json_build_object('name', column_name) 將起作用,但這里我有不同數量的行(每個 ID 可能不同)
所以這個不能如我所愿
select json_agg(jsonb_build_object(key, value)) from tickets where id = 1;
https://dbfiddle.uk/?rdbms=postgres_12&fiddle=a2140d9d9ecf7adcec13cbb1d86215c8
uj5u.com熱心網友回復:
select jsonb_object_agg(key, value) from tickets where id = 1;
uj5u.com熱心網友回復:
我想你正在尋找
SELECT id,
jsonb_object_agg(key, value)
FROM tickets
GROUP BY id;
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/377973.html
標籤:数组 json PostgreSQL的
上一篇:如何最有效地將3D陣列的N行堆疊以形成4D陣列,但一次只能推進一行?
下一篇:如何過濾重復元素直到新元素出現
