Michael Stassen wrote:
You are overthinking the issue.

Probably. :)

mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 4.1.7     |
+-----------+
1 row in set (0.00 sec)

mysql> SELECT 1 OR NULL;
+-----------+
| 1 OR NULL |
+-----------+
|         1 |
+-----------+
1 row in set (0.00 sec)

We do not need to know x to determine that 1 OR x is TRUE (1). That is the nature of OR - it only takes one TRUE value to result in TRUE (1).

I agree.

Hence, 1 or NULL must evaluate to TRUE (1). This is a case where we should correct the definition in the manual, rather than redefining how OR should behave based on the the manual's poor choice of wording.

I agree.

Therefore, Vlad has found a bug:

I agree again. :)

This is (as I see it) a documentation issue, I was not trying to say that Vlad was "wrong".

While we're at it: the term "non-zero"... what does it mean? As we all know, NULL != 0, and 0 == zero, consequently NULL must be non-zero.

I would like to have a comment on this as well... or rather: I wonder if anyone agrees with me that "non-zero" is a bad term to use in this context (MySQL documentation, description of logical operator OR), or if I am just overthinking again... :)


--
Roger


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



Reply via email to