Re: looping through query to update column

Поиск
Список
Период
Сортировка
От Merlin Moncure
Тема Re: looping through query to update column
Дата
Msg-id b42b73150610130657r5742b14fs2c861ff471ecc6d2@mail.gmail.com
обсуждение исходный текст
Ответ на Re: looping through query to update column  (Jean-Christophe Roux <jcxxr@yahoo.com>)
Список pgsql-general
On 10/13/06, Jean-Christophe Roux <jcxxr@yahoo.com> wrote:
>
> Thanks for the "ctid" trick. The code below worked fine
>     for rec in select * from fromemail_trades loop
>         update fromemail_trades set recordid = row where ctid = rec.ctid;
>         row := row -1;
>     end loop;
> The first line is a little different from your's:
>     FOR row IN SELECT ctid, * FROM table FOR UPDATE LOOP
>
> How important is it to specify ctid in the select and to add 'for update'?

it's not. also, without a where clause you are better off just locking
the table (lock table...).  also, the above loop is better achieved
via a single query.

merlin

В списке pgsql-general по дате отправления:

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: Postgresql 6.13
Следующее
От: Andrew - Supernews
Дата:
Сообщение: Re: looping through query to update column