X-Original-To: pgsql-sql-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by svr1.postgresql.org (Postfix) with ESMTP id 70C35DB6D4 for ; Sun, 13 Nov 2005 21:42:52 -0400 (AST) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 17129-01 for ; Mon, 14 Nov 2005 01:42:48 +0000 (GMT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from mailer.eglobalreach.net (mailer.eglobalreach.net [202.124.128.22]) by svr1.postgresql.org (Postfix) with ESMTP id DEF7CDB6B8 for ; Sun, 13 Nov 2005 21:42:49 -0400 (AST) Received: from ghwk02002147 (localhost [127.0.0.1] (may be forged)) by mailer.eglobalreach.net (8.11.6p2/) with ESMTP id jAE1gpf14188; Mon, 14 Nov 2005 09:42:51 +0800 From: "Christian Paul B. Cosinas" To: "'Steve SAUTETNER'" , Subject: Re: Problem with "NOT IN (subquery) Date: Mon, 14 Nov 2005 09:47:12 -0000 Message-ID: <000f01c5e900$63c2a6a0$1e21100a@ghwk02002147> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Office Outlook 11 In-Reply-To: Thread-Index: AcXoHBF8PNbbIAhPSb+ycsnzFz3fOQA46gOQ X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506 X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=1.953 required=5 tests=[AWL=-0.639, DATE_IN_FUTURE_06_12=1.498, URIBL_SBL=1.094] X-Spam-Score: 1.953 X-Spam-Level: * X-Archive-Number: 200511/113 X-Sequence-Number: 23364 I think that query should work. Hmmm... Weird... I tried that in my database and it is working. What do you mean by this? " If i use a list instead of a subquery it = works normaly but it's not easy to manage it like this." -----Original Message----- From: pgsql-sql-owner@postgresql.org = [mailto:pgsql-sql-owner@postgresql.org] On Behalf Of Steve SAUTETNER Sent: Sunday, November 13, 2005 6:27 AM To: pgsql-sql@postgresql.org Subject: [SQL] Problem with "NOT IN (subquery) Hi, I have a table named "famille" whose structure and content is : famille_code | famille_mere_famille_code | famille_libelle | famille_niveau --------------+---------------------------+-------------------+--------- --------------+---------------------------+-------------------+---- --- 000000 | | Mhre | 0 I00001 | 000000 | Composants | 1 IN0001 | I00001 | Micro-processeurs | 2 IN0002 | I00001 | Mimoires RAM | 2 INS001 | IN0002 | DDR-SDRAM | 3 INS002 | IN0002 | DDR2-SDRAM | 3 INS003 | IN0002 | SDR-SDRAM | 3 IN0003 | I00001 | Cartes mhres | 2 IN0004 | I00001 | Disques durs | 2 IN0005 | I00001 | Cartes graphiques | 2 IN0006 | I00001 | Cartes son | 2 IN0007 | I00001 | Riseau | 2 IN0008 | I00001 | Lecteurs CD/DVD | 2 IN0009 | I00001 | Graveurs CD/DVD | 2 IN0010 | I00001 | Bontiers | 2 I00002 | 000000 | Piriphiriques | 1 IN0011 | I00002 | Cli USB | 2 IN0012 | I00002 | Modems | 2 IN0013 | I00002 | Imprimantes | 2 (19 rows) The first col is the family id and the second is the mother family id. I would get a list of all families that are never in the col n=B02, so = the families that aren't node but leaf. The query, i made was "SELECT * FROM famille WHERE famille_code NOT IN (SELECT DISTINCT famille_mere_famille_code FROM famille);" But the DB returns 0 records instead of 15. If i use a list instead of a subquery it works normaly but it's not easy to manage it like this. So if anyone can help me please ... ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster I choose Polesoft Lockspam to fight spam, and you? http://www.polesoft.com/refer.html =20