Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> Re: IN() question

Re: IN() question

From: Yechiel Adar <adaryechiel_at_hotmail.com>
Date: Sun, 05 May 2002 04:43:19 -0800
Message-ID: <F001.004583DC.20020505044319@fatcity.com>


Hello Lisa

I think that using :
SQL> SELECT COUNT(*)
   2 from leisure_plan_master_temp
   3 where membership_class = 'D'
   4 AND (pay_METHOD NOT IN ('C','P')
   5 or pay_method is null)

will give you the correct result.

Yechiel Adar
Mehish

> Slap me if this is a dumb question.
>
> Here's my pay methods
>
> SQL> SELECT ASCII(PAY_METHOD), PAY_METHOD, COUNT(*)
> 2 FROM LEISURE_PLAN_MASTER_TEMP
> 3 WHERE MEMBERSHIP_CLASS = 'D'
> 4 GROUP BY PAY_METHOD;
>
> ASCII(PAY_METHOD) P COUNT(*)
> ----------------- - ----------
> 67 C 42955
> 80 P 34373
> 11786
>
> I expected this statement to return the 11,786 records that have null
> values. However, it doesn't:
>
> SQL> SELECT COUNT(*)
> 2 from leisure_plan_master_temp
> 3 where membership_class = 'D'
> 4 AND pay_METHOD NOT IN ('C','P');
>
> COUNT(*)
> ----------
> 0
>
> But when I do this, I get the answer I expect.
>
> SQL> SELECT COUNT(*)
> 2 from leisure_plan_master_temp
> 3 where membership_class = 'D'
> 4 AND PAY_METHOD IS NULL;
>
> COUNT(*)
> ----------
> 11786
>
> This isn't exactly correct. There may be other values in this field, and
if
> they show up I need to include them, not just records where this field is
> null. What am I missing? Is it because the value is NULL that Oracle
> excludes it from the IN() statement, because of the classic definition of
> NULL (can't be defined, therefore can't be sure it's not a C or a P)?
>
> This is easy enough to fix, I'll change my data load to populate the null
> values with my own code. But still? Have I got the WHY correct?
>
> Thanks for any light someone can shed on this stupid question.
>
> Lisa Koivu
> Oracle Database Monkey Mama
> Fairfield Resorts, Inc.
> 5259 Coconut Creek Parkway
> Ft. Lauderdale, FL, USA 33063
>
>
> --
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> --
> Author: Koivu, Lisa
> INET: lisa.koivu_at_efairfield.com
>
> Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051
> San Diego, California -- Public Internet access / Mailing Lists
> --------------------------------------------------------------------
> 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).
>

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Yechiel Adar
  INET: adaryechiel_at_hotmail.com

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
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 Sun May 05 2002 - 07:43:19 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US