MySQL 中的 NULLIF(expr1, expr2) 函数用来计算 expr1 是否等于 expr2。如果 expr1 = expr2 为真,则返回 NULL,否则返回 expr1。这与 CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END 相同。 返回值与第一个参数具有相同的类型。
NULLIF(expr1,expr2)
expr1 比较的参数1
expr2 比较的参数2
(1)NULLIF 函数简单使用,如下:
mysql> select NULLIF(1,1); +-------------+ | NULLIF(1,1) | +-------------+ | NULL | +-------------+ 1 row in set (0.04 sec) mysql> select NULLIF(1,2); +-------------+ | NULLIF(1,2) | +-------------+ | 1 | +-------------+ 1 row in set (0.04 sec)
由运行结果可知,NULLIF 的 expr1 和 expr2 均为 1,则返回 NULL。expr1 等于1,expr2 等于2,则返回 1。