【发布时间】:2022-01-04 22:25:09
【问题描述】:
我想返回一个psql表,但是我想以json格式返回。
假设表格看起来像这样......
| id | name | value |
|---|---|---|
| 1 | joe | 6 |
| 2 | bob | 3 |
| 3 | joey | 2 |
但我想将它作为这样的对象返回......
{
"1": {
"name": "joe",
"value": 6
},
"2": {
"name": "bob",
"value": 3
},
"3": {
"name": "joey",
"value": 2
}
}
因此,如果我使用 pandas 执行此操作,并且该表作为数据框存在,我可以像这样对其进行转换...
df.set_index('id').to_dict('index')
但我希望能够在 psql 代码中执行此操作。
我得到的最接近的是做这样的事情
select
json_build_object (
id,
json_build_object (
'name', name,
'value', value
)
)
from my_table
但不是将这一切聚合到一个对象中,结果是一堆单独的对象,由键级别的行分隔......话虽如此,这有点像......
有什么想法吗?
【问题讨论】:
-
这是一个similar thread,关于 json 数组输出而不是 json dict。
标签: json postgresql