From: | Miguel Rodríguez Penabad <penabad(at)gmail(dot)com> |
---|---|
To: | Yosip Abraham Curiel Jiménez <snake77se(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Update condicionados por otras tablas |
Date: | 2007-09-19 15:54:48 |
Message-ID: | 95335e4e0709190854j489da9d6yf2cf5fd346d5c33b@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El 19/09/07, Yosip Abraham Curiel Jiménez <snake77se(at)gmail(dot)com> escribió:
> 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)
, --una coma aquí
> f_b=(select f_y from b where id=a.id)
, --una coma aquí
> f_c=(select f_z from b where id= a.id)
, --una coma aquí
> f_d=(select f_r from b where id=a.id)
> where id in (select id from b)
Aparte de poner las comas donde te digo, sí, yo lo haría así, ya que
es la opción que permite el estándar.
Peeeero... viendo tu otro mensaje, acabo de ver que postgres permite poner
una cláusula from en el update, así que
update a
set f_a=b.f_x,
f_b=b.f_y
from b
where a.id=b.id;
debería funcionar.
Eso sí, no es estándar (SQL:2003 al menos, no creo que lo sea ni de SQL-92)
por lo que no puedo decirte exactamente lo que haría. De todos modos,
lo probé y me modificó correctamente sólo las filas que tenían
correspondencia en
la tabla b.
--
Miguel Rodríguez Penabad
From | Date | Subject | |
---|---|---|---|
Next Message | Yosip Abraham Curiel Jiménez | 2007-09-19 16:02:30 | Re: Update condicionados por otras tablas |
Previous Message | Yosip Abraham Curiel Jiménez | 2007-09-19 15:47:05 | Re: Update condicionados por otras tablas |