Here's the setup on Postgresql 9.2.4: CREATE TABLE table ( id integer NOT NULL, some_text text ); Now we enter one record, with a null or empty string for some_text, so that when we query: SELECT * FROM table WHERE some_text IS NULL; I get the entry back. So far so good. However, when I query: SELECT * FROM table WHERE some_text NOT ILIKE "%anything%'; I find that nothing was returned. Why is that
![postgresql NOT ILIKE clause does not include null string values](https://cdn-ak-scissors.b.st-hatena.com/image/square/98d6f053a97a87156775f60757c60865d0f2c47d/height=288;version=1;width=512/https%3A%2F%2Fcdn.sstatic.net%2FSites%2Fstackoverflow%2FImg%2Fapple-touch-icon%402.png%3Fv%3D73d79a89bded)