2016-10-10 89 views
1

建設小康格式化的JSON對象我有一個PostgreSQL表看起來像這樣:PostgreSQL的 - 從查詢

ID CURRENCY PRICE 
1 EUR   100 
2 USD   90 

我想這樣做,返回格式化這樣的JSON對象的查詢: { 「EUR」 :100, 「USD」:90 }

我成功地使用了json_object,但我必須將我的整數值轉換爲TEXT。

SELECT json_object(
    array_agg(prices.currency), 
    array_agg(cast(prices.price as text)) 
) FROM prices; 

所以,如果你有一個更好的主意,我正在接受它! :)

回答

3

使用json_object_agg()

with data (id, currency, price) as (
values 
    (1, 'EUR', 100), 
    (2, 'USD', 90) 
) 
select json_object_agg(currency, price) 
from data; 
+0

感謝,這正是我一直在尋找:) –