Re: Need suggestion on how best to update 3 million rows

From: Richard Huxton <dev(at)archonet(dot)com>
To: Ow Mun Heng <Ow(dot)Mun(dot)Heng(at)wdc(dot)com>
Cc: Ron Johnson <ron(dot)l(dot)johnson(at)cox(dot)net>, pgsql-general(at)postgresql(dot)org
Subject: Re: Need suggestion on how best to update 3 million rows
Date: 2007-09-06 10:32:07
Message-ID: 46DFD727.1070609@archonet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Ow Mun Heng wrote:
> On Thu, 2007-09-06 at 04:47 -0500, Ron Johnson wrote:
>> Maybe there's an English language "issue", or maybe I'm just
>> excessively picky, but using "number" in this context is confusing.
>
> My Bad.. hehe..
>
>> Then I agree with Alban:
>> update table set number = trim(number);
>> or, if you need the leading spaces:
>> update table set number = rtrim(number)
>>
>> Then:
>> update table set number = NULL where number = '';
>
> Dag it.. I wish I didn't live on the other end of the TimeZone and
> gotten this answer before I went the "hard way"
>
> oh well.. lesson learned and that's the positive spin on it right?
>
> Thanks a bunch guys..

Two other tips for bulk-updates like this:
1. Do as many columns in one go as you can
2. Only update rows that need updating

When you've finished, a CLUSTER/VACUUM FULL can be useful too.

--
Richard Huxton
Archonet Ltd

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Stefan Schwarzer 2007-09-06 11:06:14 Rankinf of Results?
Previous Message Albe Laurenz 2007-09-06 10:11:15 Re: UTF8 frustrations