1
我試圖記錄或JSON存儲到一個數組中,並從一個函數返回一個JSON:PLPGSQL:儲存於For循環每個記錄並返回JSON
CREATE OR REPLACE FUNCTION stat_per_day() RETURNS json AS $$
DECLARE
RR RECORD;
SS json[];
BEGIN
FOR RR IN (SELECT DISTINCT date
FROM timetable WHERE date<CURRENT_DATE ORDER BY date ASC)
LOOP
SELECT row_to_json(A) INTO SS FROM (SELECT RR.date as Dia, count(*) Total
FROM dates WHERE office_date=RR.date) A;
END LOOP;
RETURN json_agg(SS);
END; $$
LANGUAGE plpgsql;
錯誤:
ERROR: malformed array literal: "{"dia":"2017-07-24","total":228}"
DETAIL: Unexpected array element.
CONTEXT: PL/pgSQL function stat_per_day() line 8 at SQL statement
該查詢稍微複雜一些,但想法是在json數組或記錄數組(我認爲不存在)中「保存」每個forloop查詢,並在循環之後,從數組中返回一個完整的json。