Mega Code Archive

 
Categories / MySQL / Select Clause
 

Comparison Operators and null

mysql> Comparison operators normally return 1 (corresponding to TRUE) or 0 (FALSE). Comparisons with NULL return NULL. The two exceptions are the operators <=> and IS NULL, which even in comparison with NULL return 0 or 1: mysql> mysql> SELECT NULL=NULL, NULL=0; +-----------+--------+ | NULL=NULL | NULL=0 | +-----------+--------+ |      NULL |   NULL | +-----------+--------+ 1 row in set (0.00 sec) mysql> mysql> SELECT NULL<=>NULL, NULL<=>0; +-------------+----------+ | NULL<=>NULL | NULL<=>0 | +-------------+----------+ |           1 |        0 | +-------------+----------+ 1 row in set (0.00 sec) mysql> mysql> SELECT NULL IS NULL, NULL IS 0; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0' at line 1 mysql> mysql> mysql>