Postgres SQL查询,该查询返回具有一列中的键和另一列中的值的JSON对象

汤姆

我想创建一个返回JSON对象的(Postgres)SQL查询。键应该是来自一列的条目(例如ID),而值应该是来自另一列的条目(例如name)。我的桌子看起来像这样:

CREATE TABLE foods (
  id SERIAL PRIMARY KEY, 
  name VARCHAR(100)
);
INSERT INTO foods(name)
VALUES  ('Apple'),
        ('Banana'),
        ('Lemon');

运行示例:https//dbfiddle.uk/?rdbms = postgres_12&fiddle = 96c8ee3de02647333752a30b9cfc8674

结果应如下所示:

{
  "1": "Apple",
  "2": "Banana",
  "3": "Lemon"
}
专线小巴

只需使用json[b]_object_agg()

select jsonb_object_agg(id, name) res
from foods 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

SQL / Postgres:查找具有相同值的元组(对于另一列中的给定值)

根据Postgres中的另一列设置列的值?

Postgres SQL GROUP BY取决于另一列中的值

使一列与Postgres中的另一列保持同步

postgres中多行的第一列值

Postgres增加一列中的空值

在浮动和字母上拆分 postgres 中的一列

根据定界符拆分列值,并与postgres中的另一列匹配

Postgres:返回一列的聚合函数

Postgres-在基于另一列的列中设置唯一约束

如何比较一列的值?SQL(Postgres)

如何在Postgres中选择一列json对象,以便返回的行是数组的json数组?

当列值相同时,如何组合 postgres 中的行,并根据组合的行对另一列求和?

寻找填充两个连续行之间的值,以及在postgres中另一列的对应值

将on列的纪元时间保存到另一列postgres中

POSTGRES 9.6:如何在单个查询中按表的每一列的百分比进行分解?

Postgres-如何将两个单独查询的结果合并到同一列中

如何在 postgres 中引用非唯一列?

MySQL 查询一列中具有相同值而另一列中具有不同值的行

從 Postgres 中的另一個表中更新具有最高值的列?

在Postgres中的JSON中查询具有多个值

如何在Postgres的另一列中为特定条件选择最近的日期?

根据Postgres中另一列的条件生成整数系列

查询Postgres SQL JSON列

Postgres 视图:如何将所有列值分配给另一列 CASE WHEN 的值?

Postgres 從同一表中存在主鍵的另一列插入表中的指定列

在Postgres jsonb列中查询数组对象

运行查询,在该查询中显示在两列中具有重复值的记录,但在另一列中具有不同记录的记录

Postgres SQL查询,返回ID为动态键的JSON对象