> If you need it to work, I'm afraid you're out of luck. Think about
> what a IN (x,y,z) means. It's basically the same as a = x or a = y
> or a = z. So wifi_list IN (NULL) is like wifi_list = NULL,
> which is never true.
Thanks for the reply Paul, and I get that NULL is a special case value, but
if "wifi_list IS NULL" works, then why doesn't "wifi_list = NULL"?
Logically they seem to be the same, is "IS" only used for NULL values or
something? Or in other words, it would make sense to me that I should be
able to say "wifi_list IS 3" instead of an = sign.
> -----Original Message-----
> From: Paul DuBois [mailto:paul@stripped]
> Sent: Thursday, June 03, 2004 7:56 PM
>
> At 18:32 -0700 6/3/04, Daevid Vincent wrote:
> >How come this one works:
> >
> >SELECT wifi_list, IFNULL(wifi_list, 0) as wifi_list_new,
> >FROM wifi_table LEFT JOIN Swordfish.scanner ON scanner.scanner_id =
> >wifi_table.scanner_id LEFT JOIN wifi_wlist_table ON wifi_table_mac = mac
> >WHERE last_seen >= CURRENT_DATE AND wifi_list IS NULL;
> >
> >This one works too
> >
> >SELECT wifi_list, IFNULL(wifi_list, 0) as wifi_list_new,
> >FROM wifi_table LEFT JOIN Swordfish.scanner ON scanner.scanner_id =
> >wifi_table.scanner_id LEFT JOIN wifi_wlist_table ON wifi_table_mac = mac
> >WHERE last_seen >= CURRENT_DATE HAVING wifi_list_new IN (0,1,2);
> >
> >But this one doesn't... I *need* this to work:
>
> >SELECT wifi_list, IFNULL(wifi_list, 0) as wifi_list_new,
> >FROM wifi_table LEFT JOIN Swordfish.scanner ON scanner.scanner_id =
> >wifi_table.scanner_id LEFT JOIN wifi_wlist_table ON wifi_table_mac = mac
> >WHERE last_seen >= CURRENT_DATE AND wifi_list IN (NULL);