Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Any known problems using NOT IN ?
Hi Gurus,
I have a problem using NOT IN clause in Oracle. However using NOT EXISTS, gives me the right output. Are there any known limitations.
This query selects from the master records wherein child records are not active.
select * from ct_software_release csr where
csr.class = 'NS'
AND csr.active_flag = 'Y'
AND csr.os_id_pk not IN
(SELECT crs.os_id_fk1 FROM CT_ROADMAP_SOFTWARE crs
WHERE crs.active_flag = 'Y');
The sub-query in the above case gives 1800 rows. The above query fails to give any rows.
select * from ct_software_release csr where
csr.class = 'NS'
AND csr.active_flag = 'Y'
AND NOT EXISTS
(SELECT 1 FROM CT_ROADMAP_SOFTWARE crs
WHERE crs.os_id_fk1 = csr.os_id_pk
AND crs.active_flag = 'Y');
This above query works fine.
Thanks
Siddharth Haldankar
Zensar Technologies Ltd.
Cisco Systems Inc.
(Offshore Development Center)
# : 091 020 4128394
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Siddharth Haldankar INET: shaldank_at_cisco.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Wed Dec 17 2003 - 23:24:27 CST