>
>
> ​​
> CREATE OR REPLACE FUNCTION dah.wdetcad() RETURNS TRIGGER AS $body$
> declare
> i integer;
>
> BEGIN
> for i in 1..(select max(codempresa) from configura  WHERE codhotel >1)
>     loop
> INSERT INTO detcad
> select i, new.codgrupo, new.codfuncresp ;
>  end loop;
>
> RETURN NEW();
> END;
> $body$
> LANGUAGE plpgsql;
>

​Coloque o max em uma variável e a função ficaria: ​

​
CREATE OR REPLACE FUNCTION dah.wdetcad() RETURNS TRIGGER AS $body$
declare
i integer;
        vmax integer;

BEGIN
        select max(codempresa) from configura  WHERE codhotel >1 INTO vmax;
for i in 1..vmax
    loop
INSERT INTO detcad
select i, new.codgrupo, new.codfuncresp ;
 end loop;

RETURN NEW();
END;
$body$
LANGUAGE plpgsql;

Obs: não testei a função.

[]s
Danilo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a