Re: Query runs forever after upgrading to 9.3 - Mailing list pgsql-general

From Christoph Berg
Subject Re: Query runs forever after upgrading to 9.3
Date
Msg-id 20130923134634.GB2062@msgid.df7cb.de
Whole thread Raw
In response to Query runs forever after upgrading to 9.3  ("Andrus" <kobruleht2@hot.ee>)
Responses Re: Query runs forever after upgrading to 9.3  ("Andrus" <kobruleht2@hot.ee>)
List pgsql-general
Re: Andrus 2013-09-23 <E04C65FDEE80430DB6499621E2EC36BC@dell2>
> SELECT * FROM toode
> WHERE toode in (SELECT toode FROM tempkaive)
>     OR toode in (SELECT toode FROM tempalgsemu)

Generally, WHERE IN (SELECT) should be rewritten as WHERE EXISTS
(SELECT):

SELECT * FROM toode o
WHERE EXISTS (SELECT toode FROM tempkaive i WHERE o.toode = i.toode)
    OR EXISTS (SELECT toode FROM tempalgsemu i WHERE o.toode = i.toode)

Also, ANALYZEing the tables after the upgrade might help if this has
not yet been done.

Christoph
--
cb@df7cb.de | http://www.df7cb.de/


pgsql-general by date:

Previous
From: "Andrus"
Date:
Subject: Query runs forever after upgrading to 9.3
Next
From: Jayadevan M
Date:
Subject: Re: Query runs forever after upgrading to 9.3