Re: Make UPDATE query quicker? - Mailing list pgsql-novice

From James David Smith
Subject Re: Make UPDATE query quicker?
Date
Msg-id CAMu32ABDyRc=-wJzmTQqBUMDific14=cMAiBoyzMJrNCFDhn3w@mail.gmail.com
Whole thread Raw
In response to Re: Make UPDATE query quicker?  (Michael Wood <esiotrot@gmail.com>)
List pgsql-novice
Michael,

Thanks, I will give that a try later today.

The first of the 20 updates I need to do took about 25 minutes in the
end by the way.

All other useful suggestions gratefully recevied... ;-)

Thanks

James


On 12 October 2012 12:53, Michael Wood <esiotrot@gmail.com> wrote:
> On 12 October 2012 12:16, James David Smith <james.david.smith@gmail.com> wrote:
>>
>> Hi all,
>>
>> Wondered if someone had any tips about how to do this UPDATE query
>> quicker. I've got two tables:
>>
>> CREATE TABLE import_table
>> ( date_time TIMESTAMP
>> person_id, INTEGER
>> data REAL)
>>
>> CREATE TABLE master_table
>> (date_time TIMESTAMP
>> person_id INTEGER
>> data REAL)
>>
>> Each table has 172800 rows in it.
>>
>> I want to move the 'data' from the import_table to the master_table by
>> matching on both the date_time and the person_id.  I do this with this
>> query:
>>
>> UPDATE master_table a
>> SET data =
>> (SELECT b.date
>> FROM import_table b
>> WHERE a.date_time = b.date_time AND a.person_id = b.person_id AND
>> b.data IS NOT NULL)
>>
>> However I need to do this about 20 times, and the first time is still
>> running at the moment (about 15 minutes).
>>
>> Am I doing something wrong? Should I put some indexes on the columns
>> somehow to improve performance?
>
> I don't know if this will help performance-wise, but maybe it's worth a try:
>
> See if doing it with an UPDATE FROM helps at all.  e.g.:
>
> http://stackoverflow.com/a/2766766/495319
>
> --
> Michael Wood <esiotrot@gmail.com>


pgsql-novice by date:

Previous
From: Michael Wood
Date:
Subject: Re: Make UPDATE query quicker?
Next
From: Dominik Moritz
Date:
Subject: Re: check if type is valid pg type