我在 postgres 中创建了一个返回 json 的函数。
该函数在 API 中使用并返回:
[
{
"jobfeed_beroepen_list": [
{
"profession_code": 3674,
"profession_descr": "Manusje van alles (boodschappen, post en goederen)"
},
{
"profession_code": 4107,
"profession_descr": "Algemeen medewerker"
}
]
}
]
但我希望它返回这个:
[
{
"profession_code": 3674,
"profession_descr": "Manusje van alles (boodschappen, post en goederen)"
},
{
"profession_code": 4107,
"profession_descr": "Algemeen medewerker"
}
]
问题:我必须在代码中更改什么?
--------------- 这是功能--------------
CREATE OR REPLACE FUNCTION api.fnc_jobfeed_beroepen(
)
RETURNS TABLE(jobfeed_beroepen_list jsonb)
LANGUAGE 'plpgsql'
COST 100
VOLATILE
ROWS 1000
AS $BODY$
DECLARE
BEGIN
jobfeed_beroepen_list := to_jsonb(array_agg(t)) FROM
(SELECT profession_code, profession_descr
FROM skillcv.jobfeed_beroepen
WHERE use = 1
) AS t;
RETURN QUERY SELECT jobfeed_beroepen_list;
END;
$BODY$;
您可以使用 json 聚合。那将是:
return query
select jsonb_agg(
jsonb_build_object(
'profession_code', profession_code,
'profession_descr', profession_descr
)
) as res
from skillcv.jobfeed_beroepen
where use = 1
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句