Re: Index Usage using IN

From: "Jeffrey W(dot) Baker" <jwbaker(at)acm(dot)org>
To: pgsql-performance(at)postgresql(dot)org
Subject: Re: Index Usage using IN
Date: 2006-02-01 20:28:19
Message-ID: 1138825699.8376.8.camel@toonses.gghcwest.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Wed, 2006-02-01 at 12:22 -0800, Jeffrey W. Baker wrote:
> On Thu, 2006-02-02 at 09:12 +1300, Ralph Mason wrote:
> > Hi,
> >
> > I have 2 tables both have an index on ID (both ID columns are an oid).
> >
> > I want to find only only rows in one and not the other.
> >
> > Select ID from TableA where ID not IN ( Select ID from Table B)
>
> Have you considered this:
>
> SELECT ID from TableA EXCEPT Select ID from Table B

Alternately:

SELECT a.ID
FROM TableA AS a
LEFT JOIN TableB AS b
ON a.ID = b.ID
WHERE b.ID IS NULL

-jwb

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Tom Lane 2006-02-01 20:36:15 Re: Planner reluctant to start from subquery
Previous Message Kevin Grittner 2006-02-01 20:24:39 Re: Planner reluctant to start from subquery