Hello Doug,

> My question question from MySQL 4.0.22: is it okay that a null interger
tests as
> equal to any value. I am not sure the table structure matters but in case
it is
> I included it.
>
> I did not expect that null was not not-equal to 1. Cursory testing seems
to
> indicate that a null integer field is not not-equal to any specific value.
If
> this is the "known" behavior, I would suggest that this behavior be added
to
> section A.5.3. Testing the field=1 works as I would expect, that is the
null
> value is not equal to 1.

That's because NULL is NOT a value (not the logical "not" ;) ... It's a
state.

Any column can have two states: either NULL or NOT NULL.

When a column is "not null" it can have values suitable for it's given
domain
(eg: all integer values).

If there's no value (NULL), how can you compare it?

Think of "NULL" as "unknown". Is 2 equal to "unknown"? I don't know, so
the result is "unknown", hence, NULL.


Hope this helps,

With regards,

Martijn Tonies
Database Workbench - tool for InterBase, Firebird, MySQL, Oracle & MS SQL
Server
Upscene Productions
http://www.upscene.com
Database development questions? Check the forum!
http://www.databasedevelopmentforum.com


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to