我在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, ...}]
我该怎么做?
答案 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”才能正确完成 - 忽略结果集属性名称