Re: Insert dentro de un Select

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

In response to

Browse pgsql-es-ayuda by date

  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