Re: INOUT PARAMETERS WITH RETURN TABLES IN FUNCTION - Mailing list pgsql-general

From Thomas Kellerer
Subject Re: INOUT PARAMETERS WITH RETURN TABLES IN FUNCTION
Date
Msg-id 0dd3d441-42f8-daf6-7549-2bde894a3af1@gmx.net
Whole thread Raw
In response to INOUT PARAMETERS WITH RETURN TABLES IN FUNCTION  (İlyas Derse <ilyasderse@gmail.com>)
List pgsql-general
İlyas Derse schrieb am 08.11.2019 um 09:18:
> I'm trying to migration to PostgreSql from SQL Server.  I have Stored Procedures what have output parameters and
returntables. How can i do both together. 
 
> 
> CREATE or replace FUNCTION public."test" (INOUT "x" integer, INOUT "y" character varying(36))
> RETURNS TABLE  (
> "id" integer,
> "filesize" character varying(36)
> )
> AS $$
>  BEGIN
>   x=6;
> RETURN QUERY
> SELECT * FROM    public."tbl_employees" ;
> 
> END;
> $$ LANGUAGE plpgsql;
> 
> I can not create that because of inout parameters.
> Another place;
> 
> do $$
> DECLARE b integer = 1;
> DECLARE d integer = 2 ;
> BEGIN
>   select * from public."test"();
> END;
> $$;
> 
>  Anybody have an idea ? 


Can't you just include the "out" parameters in the result? 

    CREATE or replace FUNCTION public.test(x integer, y character varying(36))
      RETURNS TABLE  (id integer, filesize character varying(36), x integer, y varchar)
    AS $$
    begin
      x := 42;
      y := 'foo';
      
      RETURN QUERY
        SELECT t.*, x, y 
        FROM  public.tbl_employees t;
    END;

It's different because x and y are repeated for every row, but that's the only thing I can think of.




pgsql-general by date:

Previous
From: "Zwettler Markus (OIZ)"
Date:
Subject: AW: broken backup trail in case of quickly patroni switchback andforth
Next
From: "Zwettler Markus (OIZ)"
Date:
Subject: AW: AW: AW: AW: broken backup trail in case of quickly patroniswitchback and forth