On 2/16/16, Denis Burke <burkeden at gmail.com> wrote:
>
> select case when null not in ('a') then 'not in list' else 'is in list'
> end;
>
The expression "null not in ('a')" evaluates to null. So your query
is really: "select case when null then 'not-in-list' else
'is-in-list' end;" Since the condition is not true (because null is
not true) then the else clause is taken. This is correct behavior.
PostgreSQL gets the same answer.
--
D. Richard Hipp
drh at sqlite.org

