From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Figo's <figo_sistemas(at)yahoo(dot)es> |
Cc: | pgsql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Insert dentro de un Select |
Date: | 2005-12-19 13:35:12 |
Message-ID: | 20051219133512.GA8788@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Figo's escribió:
> Hola Lista ,
>
> Necesito hacer un INSERT a medida que va corriendo un Select e isertar el campo que me bota el select pero hasta ahora no me funciona, estoy haciendo lo siguiente:
>
> CREATE OR REPLACE FUNCTION insert_dentro_select()
> RETURNS text AS
> $BODY$
> DECLARE
> rs RECORD;
> BEGIN
> For rec In select tb1_cambo from tb1 LOOP;
> insert into tb2 (tb2_campo) values (tb1_cambo);
> End Loop;
> RETURN 'OK';
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
> El error que me da es:
> ERROR: loop variable of loop over rows must be a record or row variable at or near "LOOP" at character 818
>
> Es posible hacer algo asi?
Claro:
create or replace function aprenda_sql() returns text as
$body$
begin;
insert into tb2 (tb2_campo) select tb1_campo from tb1;
return 'OK';
end;
$body$;
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
From | Date | Subject | |
---|---|---|---|
Next Message | José Fermín francisco ferreras | 2005-12-19 14:34:55 | actualizar las ganancias |
Previous Message | Figo's | 2005-12-19 13:26:20 | Insert dentro de un Select |