Excerpts from Lazaro Rubén García Martinez's message of jue feb 02 20:16:38 
-0300 2012:

> Y ejecuta el siguiente script si usas PostgreSQL 9, de lo contrario crea una 
> función y dentro pones ese contenido:
> 
> DO LANGUAGE 'plpgsql'
> $$
> DECLARE
>                 iterator INTEGER;
>                 valor_ VARCHAR;
> BEGIN
>                 FOR iterator, valor_ IN SELECT table1.pk_tabla1, table1.valor 
> FROM table1
>                 Loop
>                      UPDATE table2
>                     SET
>                        valor = valor_
>                     WHERE  pk_tabla1 = iterator;
>                 END Loop;
> END
> $$

Es mucho más simple:

update table2
set valor = table1.valor
from table2 where pk_tabla2 = table1.pk_table1;

O algo similar.  No necesitas un FOR LOOP.

Cada vez que usas un cursor cuando podrías hacer un join, las
autoridades encarcelan un gatito de por vida.

-- 
Álvaro Herrera <[email protected]>
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a