From: | Yosip Abraham Curiel Jiménez <snake77se(at)gmail(dot)com> |
---|---|
To: | Miguel Rodríguez Penabad <penabad(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Update condicionados por otras tablas |
Date: | 2007-09-19 15:47:05 |
Message-ID: | d72a0de30709190847v16b3c5e5j8d398c497971975@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
no... me refiero a el ejemplo que me enviaste, algo asi:
update a
set
f_a=(select f_x from b where id=a.id)
f_b=(select f_y from b where id=a.id)
f_c=(select f_z from b where id=a.id)
f_d=(select f_r from b where id=a.id)
where id in (select id from b)
On 9/19/07, Miguel Rodríguez Penabad <penabad(at)gmail(dot)com> wrote:
>
> El 19/09/07, Yosip Abraham Curiel Jiménez <snake77se(at)gmail(dot)com> escribió:
> > Gracias por la pronta respuesta Miguel,
> >
> > Lo del where, y si lo pongo que colocará en el campo "f_a"?
> > si quiero actilizar varios campos de la "tabla_a" d la misma manera de
> la
> > "tabla_b", ¿tendria que hacer subquerys en cada campo?
> >
>
> Si NO colocas el where, te modifica TODAS las filas de la tabla A,
> poniendo en el campo f_a el valor f_x de la tabla b si existe el mismo id,
> y un NULL si no existe ese id.
>
> Si pones el where, se modifican sólo aquellas filas de A que tienen
> correspondencia
> en la tabla B, poniendo en f_a el valor f_x correspondiente. Para las
> filas de A
> que "no existan" en B no hace nada.
>
> En cuanto a varias subconsultas, una por campo, creo que sí las necesitas.
> Es decir, poner SET (campo1, campo2) = (select v1, v2 from ...) a mi
> no me funciona.
>
> --
> Miguel Rodríguez Penabad
>
--
Yosip Curiel (Snake77SE)
From | Date | Subject | |
---|---|---|---|
Next Message | Miguel Rodríguez Penabad | 2007-09-19 15:54:48 | Re: Update condicionados por otras tablas |
Previous Message | Miguel Rodríguez Penabad | 2007-09-19 15:40:44 | Re: Update condicionados por otras tablas |