Yes, your why is correct, NULL is neither equal nor not equal to any 
value.  I usually nvl to return a space for null values when I have to 
consider them, then a not equal will work.

At 03:43 PM 5/3/02 -0800, you wrote:
>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: [EMAIL PROTECTED]
>
>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: [EMAIL PROTECTED] (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: Regina Harter
  INET: [EMAIL PROTECTED]

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: [EMAIL PROTECTED] (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).

Reply via email to