[Pgsql-ayuda] update exists
   
    Alvaro Herrera
     
    alvherre@dcc.uchile.cl
       
    Thu, 23 Oct 2003 14:37:47 -0300
    
    
  
On Thu, Oct 24, 2002 at 05:15:05PM +0100, Xavi Puig wrote:
> Perd?n, se me habia olvidado la query:
> 
> UPDATE tab1 SET col20=false WHERE exists (select * from (select * from tab1 where col20=true) as alias0,tab2,tab3 where (tab2.col2=tab3.col1 and tab3.col2=alias0.col1) and ( tab2.col2=20500))
Hmm... que tuplas se supone que tiene que actualizar?  Como estas
uniendo tab1 con la subconsulta?  Me parece sospechoso esto, estas
seguro que es correcto?  Intenta reescribirlo.
update tab1 set col20=false from tab3
where
	tab3.col1=20500 and
	tab3.col2=tab1.col1 and
	tab1.col20=true
No es equivalente?  No estoy seguro pero me parece que si ...
-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Dios hizo a Adán, pero fue Eva quien lo hizo hombre.