On 02/02/2012 05:16 PM, Lazaro Rubén García Martinez wrote:
Acá te dejo un pequeño ejemplo:
CREATE TABLE public.table1 (
pk_tabla1 SERIAL,
valor VARCHAR,
CONSTRAINT table1_pkey PRIMARY KEY(pk_tabla1)
) WITHOUT OIDS;
CREATE TABLE public.table2 (
pk_tabla2 SERIAL,
valor VARCHAR,
pk_tabla1 INTEGER NOT NULL,
CONSTRAINT table2_pkey PRIMARY KEY(pk_tabla2),
CONSTRAINT table2_fk FOREIGN KEY (pk_tabla1)
REFERENCES public.table1(pk_tabla1)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE
) WITHOUT OIDS;
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
$$
Espero que esto te pueda servir, y sea lo que andas buscando.
Saludos.
*De:*Miguel Angel [mailto:[email protected]]
*Enviado el:* jueves, 02 de febrero de 2012 06:18:PM
*Para:* Lazaro Rubén García Martinez
*Asunto:* Re: [pgsql-es-ayuda] Como pasar los datos de un campo de x
tabla .
asi es veo que se puede filtrar por su id. pero no se como seria el
update o que se podria apilcar
El 2 de febrero de 2012 18:02, Lazaro Rubén García Martinez
<[email protected] <mailto:[email protected]>> escribió:
O sea que pasarías el dato hacia la otra tabla, cuando el id por el
cual se encuentran relacionadas coincida??
Saludos.
*De:*[email protected]
<mailto:[email protected]>
[mailto:[email protected]
<mailto:[email protected]>] *En nombre de *Miguel Angel
*Enviado el:* jueves, 02 de febrero de 2012 06:03:PM
*Para:* [email protected]
<mailto:[email protected]>
*Asunto:* [pgsql-es-ayuda] Como pasar los datos de un campo de x tabla .
Hola amigos:
Tengo un conveniente quisiera que me ayuden, se trata de un campo que
tengo en una tabla y lo que quiero es pasar los datos de ese campo a
otra tabla con el mismo nombre de campo.Ambas tablas tiene un id
relacionado He visto en google que lo pasan con un UPDATE pero no
stoy seguro , toda ayuda sera bienvenida .
--
Atte. Miguel Angel Marquina
--
Atte. Miguel Angel Marquina
Yo estoy a favor de la solución de un update:
UPDATE tabla1 t1 SET t1.campo = (SELECT t2.campo FROM tabla2 t2 WHERE
t1.id = t2.id);
claro, esto suponiendo que id es único (cómo debe ser).
--
PostgreSQL and Linux tips http://sharingtechknowledge.blogspot.com/