Query on NULL colum cannot pick it up

I get a strange result upon querying DB records in which the column
(VARCHAR) is set to NULL by default

the generated query is :
SELECT * FROM contents WHERE contents.type IN (‘Article’) AND
(state <> ‘draft’);

when contents.state is NULL, then the record IS NOT selected
when contents.state is’’ ( empty ) then the record is selected
( obviously when set to any other value too…)

is it the ‘standard’ behavior ? ( so I’ll have to change the
default …)
or should I modify /add anything in the query ?

thanks for feedback

On Jun 8, 2012, at 8:04 AM, Erwin wrote:

when contents.state is NULL, then the record IS NOT selected
when contents.state is’’ ( empty ) then the record is selected
( obviously when set to any other value too…)

Yes, it’s how SQL works–NULL is ‘unknown’, so comparison with any value
returns null. You need a SQL primer, and look especially for
three-valued logic.


Scott R.
[email protected]
http://www.elevated-dev.com/
(303) 722-0567 voice

thanks … I am using now a ‘’ (empty) default and it works