On Thu, Feb 24, 2011 at 12:59 PM, Vik Reykja <vikrey...@gmail.com> wrote:
> On Thu, Feb 24, 2011 at 20:56, Dave Johansen <davejohan...@gmail.com>wrote: > >> On Thu, Feb 24, 2011 at 12:33 PM, Vik Reykja <vikrey...@gmail.com> wrote: >> >>> On Thu, Feb 24, 2011 at 16:14, Dave Johansen <davejohan...@gmail.com>wrote: >>> >>>> You'll notice that the subquery version is doing the full join and then >>>> the filtering, but the explicitly listed version pushing the filtering into >>>> the plan before the join. Is there a way to make the subquery version >>>> perform the same optimization? >>>> >>> >>> EXPLAIN ANALYZE SELECT * FROM addressesall WHERE id = ANY (array(SELECT >>> id FROM users WHERE name='A')); >>> >>> (Tested on 9.0.3) >>> >> >> I just tested that on 8.3.3 and it performed quickly like I expected the >> other query to, so that did the trick. >> > > Is there any good reason you're not using 8.3.14? > No, I just haven't taken the time to do the upgrade on all of our systems. It is definitely something that I have started to consider more strongly though. Dave