

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon QLDB 中的 NULLIF 函数
<a name="ql-functions.nullif"></a>

**重要**  
终止支持通知：现有客户将能够使用 Amazon QLDB，直到 2025 年 7 月 31 日终止支持。有关更多详细信息，请参阅[将亚马逊 QLDB 账本迁移到亚马逊 Aurora PostgreSQL](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)。

在 Amazon QLDB 中，指定两个表达式，如果两个表达式的计算结果为相同值，则使用`NULLIF` 函数返回 `NULL`。否则该函数会返回空，对其执行第一个表达式计算结果。

该 `NULLIF` 函数不会传播 `NULL`和`MISSING`。

## 语法
<a name="ql-functions.nullif.syntax"></a>

```
NULLIF ( expression1, expression2 )
```

## Arguments
<a name="ql-functions.nullif.arguments"></a>

*expression1*, *expression2*  
函数对比的两个字段名称或表达式。这些参数可以是任何支持[数据类型](ql-reference.data-types.md)的参数。

## 返回类型
<a name="ql-functions.nullif.return-type"></a>

任何支持数据类型。返回类型为 `NULL` 或与第一个表达式的类型相同。

## 示例
<a name="ql-functions.nullif.examples"></a>

```
NULLIF(1, 1)             -- null
NULLIF(1, 2)             -- 1
NULLIF(1.0, 1)           -- null
NULLIF(1, '1')           -- 1
NULLIF([1], [1])         -- null
NULLIF(1, NULL)          -- 1
NULLIF(NULL, 1)          -- null
NULLIF(null, null)       -- null
NULLIF(missing, null)    -- null
NULLIF(missing, missing) -- null

-- Runnable statements
SELECT NULLIF(1, 1) FROM << 0 >>   -- null
SELECT NULLIF(1, '1') FROM << 0 >> -- 1
```

## 相关函数
<a name="ql-functions.nullif.related"></a>
+ [COALESCE](ql-functions.coalesce.md)
+ [EXISTS](ql-functions.exists.md)