यदि आप कोई परिणाम वापस करना चाहते हैं, तो आपको return query
. का उपयोग करना होगा PL/pgSQL में जैसा कि मैनुअल में प्रलेखित है
CREATE OR REPLACE FUNCTION dwgcould.returnallcolumns(IN sessionId character varying)
RETURNS SETOF public.mytable AS
$BODY$
BEGIN
return query --<< this was missing
SELECT *
FROM public.mytable
WHERE session_id = returnallcolumns.sessionId
ORDER BY pro_id DESC LIMIT 1;
END;
$BODY$
LANGUAGE plpgsql VOLATILE;
लेकिन इसके लिए आपको PL/pgSQL की आवश्यकता नहीं है, एक साधारण SQL फ़ंक्शन अधिक कुशल होगा:
CREATE OR REPLACE FUNCTION dwgcould.returnallcolumns(IN sessionId character varying)
RETURNS SETOF public.mytable AS
$BODY$
SELECT *
FROM public.mytable
WHERE session_id = returnallcolumns.sessionId
ORDER BY pro_id DESC LIMIT 1;
$BODY$
LANGUAGE sql;