>Description:
    The documentation for NULLIF states that expr1 is evaluated twice if the 
expressions are equal.
    Actually, it is the opposite. Expr1 is evaluated twice when the two exporessions 
are NOT equal.

>How-To-Repeat:

mysql> set @myval:=0;
Query OK, 0 rows affected (0.00 sec)

mysql> select NULLIF(@myval:=@myval+1,1); # now @myval is 1, it matches, NULLIF 
returns NULL
+----------------------------+
| NULLIF(@myval:=@myval+1,1) |
+----------------------------+
|                       NULL |
+----------------------------+
1 row in set (0.00 sec)

mysql> select NULLIF(@myval:=@myval+1,1); # After the first test, @myval is 2 ; 
doesn't match
+----------------------------+
| NULLIF(@myval:=@myval+1,1) |
+----------------------------+
|                          3 |
+----------------------------+
1 row in set (0.00 sec)
# @myval is now 3, as a result of a double evaluation, when expr1 and expr2 were not 
equal.

>Fix:
    Correct the documentation

>Submitter-Id:  <submitter ID>
>Originator:    Giuseppe Maxia
>Organization:

>MySQL support: none
>Synopsis:  error in documentation
>Severity:  non-critical
>Priority:  low
>Category:  mysql
>Class:     doc-bug




---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to