PostgreSQL - 从查询中构造格式良好的json对象

时间:2016-10-10 11:03:59

标签: json postgresql

我有一个Postgresql表,如下所示:

bash-4.3$ ls -X                                                                                                   
bar.png  foo.png  bar.py  foo.py  bar.txt  foo.txt                                                                
bash-4.3$ ls -X | pr -3 -t                                                                                        
bar.png                 bar.py                  bar.txt                                                           
foo.png                 foo.py                  foo.txt    

我想做一个返回一个格式如下的JSON对象的查询:     {       " EUR":100,       " USD":90     }

我成功使用了json_object,但我必须将整数值转换为TEXT。

ID   CURRENCY    PRICE
1    EUR         100
2    USD         90

所以,如果你有更好的主意,我就会接受它! :)

1 个答案:

答案 0 :(得分: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;