Re: [SQL] unmatched - Mailing list pgsql-sql

From Ross J. Reedstrom
Subject Re: [SQL] unmatched
Date
Msg-id 19990610163208.A878@wallace.ece.rice.edu
Whole thread Raw
In response to unmatched  ("Brett W. McCoy" <bmccoy@lan2wan.com>)
List pgsql-sql
On Thu, Jun 10, 1999 at 08:08:20PM -0400, Brett W. McCoy wrote:
> I seem to have a serious brain fart going here.   I have two tables, and 
> I want to find out which rows that are in the first do not have a match 
> in the second.  If I could create an explicit left join, I could do it by 
> finding the rows in the second column that are NULL.  Here's what I kinda 
> have, but itjust sits there and never returns anything:
> 
> select count(*) from apdf
> where apdf.doc_index != ondisk.doc_index;

This will return every row in the second table that doesn't math the
current row in the first table, for every single row in the first table.
That's roughly the product of the number or rows in the two tables.

What your looking for is:

select count(*) from apdf where apdf.doc_index not in   (select doc_index from ondisk);

Ross

> 
> I tried the NOT IN operator (!!=), but it didn't like that at all.  Is != 
> a valid operator?
> 
> Brett W. McCoy           
>                                          http://www.lan2wan.com/~bmccoy
> -----------------------------------------------------------------------
> "Biology is the only science in which multiplication means the same
> thing as division."
> 

-- 
Ross J. Reedstrom, Ph.D., <reedstrm@rice.edu> 
NSBRI Research Scientist/Programmer
Computer and Information Technology Institute
Rice University, 6100 S. Main St.,  Houston, TX 77005


pgsql-sql by date:

Previous
From: "Brett W. McCoy"
Date:
Subject: unmatched
Next
From: Ant9000
Date:
Subject: Re: [SQL] OUTER JOINs in PostgreSQL