NULLIF

比较两个表达式。如果两个表达式不相等,则该函数返回第一个表达式 (expression1)。如果两个表达式相等,则该函数返回 null。

行为类型

不可变

语法

NULLIF( expression1, expression2 )

参数

expression1
是任何数据类型的值。
expression2
必须与 expr1 具有相同的数据类型,或者其类型必须可以隐式转换为与 expression1 相匹配。结果与 expression1 具有相同的类型。

示例

下面的一系列语句说明了 NULLIF 函数的一个简单用法。

创建包含单列的表 t and insert some values

CREATE TABLE t (x TIMESTAMPTZ);
INSERT INTO t VALUES('2009-09-04 09:14:00-04');
INSERT INTO t VALUES('2010-09-04 09:14:00-04');

发出 select 语句:

SELECT x, NULLIF(x, '2009-09-04 09:14:00 EDT') FROM t;
           x            |         nullif
------------------------+------------------------
 2009-09-04 09:14:00-04 |
 2010-09-04 09:14:00-04 | 2010-09-04 09:14:00-04
SELECT NULLIF(1, 2);
 NULLIF
--------
      1
(1 row)
SELECT NULLIF(1, 1);
 NULLIF
--------
(1 row)
SELECT NULLIF(20.45, 50.80);
 NULLIF
--------
  20.45
(1 row)