0
我有一个plpgsql函数和一个复杂的嵌套SELECT查询,我想返回查询的结果表作为JSON。我会如何去做这件事?我有这样的事情:从函数返回SELECT结果作为JSON(Postgres)
CREATE TEMPORARY TABLE selectRESULTS AS
/*some long, complicated, and nested SELECT query
.............
..............
*/
RETURN array_to_json(array_agg(selectResults));
编辑:我试图解决方案
使用Pozs'的方法之一后增加了额外的规格:
RETURN (SELECT json_agg(selectResults) FROM selectResults);
我得到一个JSON。但是它与额外的数组嵌套,这使得内部对象难以访问。
目前我得到
[['[{"someKey": someValue}, etc]']]
有什么办法来摆脱两个外部阵列,这样,而不是使用
somejson[0][0][0]["someKey"]
接取someValue
,我可以只使用someJson[0]["someKey"]
?
在此先感谢!
谢谢!我还没有尝试过,但我的查询是相当复杂的(嵌套严重,执行各种计算,并与多列工作),所以一个简单的SQL函数可能是不可能的。 – Teboto
编辑我的帖子。你碰巧有一个可以满足我额外规格的替代解决方案吗? – Teboto
@Teboto没有任何关于'selectResults'的更多知识是不可能分辨出来的。 (最可能的解决方案是您的数据已经在数组中)请提供更多详细信息,并且不要在每一个新信息之后改变问题。如果您有新问题,请将其作为单独问题发布。 – pozs