我该如何编辑这个json?

时间:2017-09-15 03:28:22

标签: arrays json postgresql view postgrest

我在VIEW中有这个代码:

SELECT json_object_agg(code,value) FROM table1

它在我的postgREST api中生成:

[{"json_object_agg":"{code1: value1, code2: value2, ...}"]

我想删除json_object_agg以使其像这样:

[{code1: value1, code2: value2, ...}]

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您不能拥有空的结果集名称。我认为这与您获得的previous question相关

t=# select json_object_agg(code,value) from tt;
                  json_object_agg
----------------------------------------------------
 { "ALLOW_MAC_ADDR" : "1", "USER_ALIAS" : "James" }

因此,如果您尝试使用空值命名列(我可以根据您的帖子要求最接近),您会收到错误:

t=# select json_object_agg(code,value) "" from tt;
ERROR:  zero-length delimited identifier at or near """"
LINE 1: select json_object_agg(code,value) "" from tt;
                                       ^

当然,你可以用空格来模仿它,比如:

t=# select json_object_agg(code,value) " " from tt;

----------------------------------------------------
 { "ALLOW_MAC_ADDR" : "1", "USER_ALIAS" : "James" }

这几乎没有名字,但我认为你必须修改你的“postgREST api”才能正确完成 - 忽略结果集属性名称