plpgsql: вызов функции с двумя выходными параметрами

Я пытаюсь получить значения из функции plpgsql с двумя параметрами OUT, но у меня возникла проблема.

Вот функции:

CREATE OR REPLACE FUNCTION get_test(OUT x text, OUT y text)
AS $$
BEGIN
   x := 1;
   y := 2;
END;
$$  LANGUAGE plpgsql;
----------------------------------------------------------------

CREATE OR REPLACE FUNCTION get_test_read()
RETURNS VOID AS $$
DECLARE
   xx text;
   yy text;
BEGIN

   SELECT get_test() INTO xx, yy;

   RAISE INFO 'x: <%>', xx;
   RAISE INFO 'y: <%>', yy;

END;
$$  LANGUAGE plpgsql;

Вывод команды:

select get_test_read();

ИНФОРМАЦИЯ: x: <(1,2)

ИНФОРМАЦИЯ: y: <>

get_test_read


Таким образом, оба значения относятся к первому параметру. Я не могу найти пример того, как вызвать такую ​​​​функцию.

20
задан marco 14 May 2012 в 13:10
поделиться