Re: Select in update - Mailing list pgsql-general

From Manfred Koizar
Subject Re: Select in update
Date
Msg-id 03cliuckc34vmg3q44skgip07a3dnclbnl@4ax.com
Whole thread Raw
In response to Select in update  ("João" Paulo Batistella <batistellabr@yahoo.com.br>)
List pgsql-general
On Mon, 8 Jul 2002 12:35:23 -0700 (PDT), "João" Paulo Batistella
<batistellabr@yahoo.com.br> wrote:
>I need to update a table (13000 rows) using something
>like this:
>update rua  set cod_bairro =
>(select cod_bairro from bairro b where b.vetbairro =
>r.vetbairro)

JP, you were close to it.  Your statement would work if you change it
to
update rua
   set cod_bairro = (select cod_bairro
                       from bairro b
                      where b.vetbairro = rua.vetbairro)
                                          ^^^
and if vetbairro is unique in bairro (at least for the values of
vetbairro appearing in rua).  And if it works, then the following
statement should also work, probably faster:

UPDATE rua
   SET cod_bairro = b.cod_bairro
  FROM bairro b
 WHERE b.vetbairro = rua.vetbairro;

Servus
 Manfred



pgsql-general by date:

Previous
From: Gregory Seidman
Date:
Subject: Re: Null in the where-clause
Next
From: Vince Vielhaber
Date:
Subject: Re: Survey on Freebsddiary