SQL NULLIF()函数
SQL NULLIF() 函数用于验证两个表达式是否相等。
它接受两个参数 expr1 和 expr2 ,如果两个表达式相等,则返回 NULL ;否则返回第一个表达式。
注意: 如果两个表达式不相等,则始终返回第一个表达式,无论第一个表达式大还是第二个表达式大。
语法
以下是SQL NULLIF() 函数的语法:
参数
- expr1 - 它是第一个表达式。
-
expr2 - 它是第二个表达式。
返回值
如果两个表达式相等,该函数返回 NULL 。
示例
如果两个表达式 相等 , NULLIF() 函数返回 NULL 值。
以下程序使用 NULLIF() 函数确定第一个表达式 100 是否等于第二个表达式 100 。
输出
以下是上述查询的输出 –
示例
如果两个表达式 不同 ,则此函数返回第一个表达式。
在此示例中,我们使用SQL NULLIF() 函数来验证第一个表达式 ’50’ 是否等于第二个表达式 ’30’ 。
输出
执行上述语句后,将产生以下输出结果−
示例
以下是SQL NULLIF() 函数的另一个示例,我们在这里使用该函数来比较 两个 字符串是否相等。
输出
上述SQL语句产生如下输出:
示例
如果我们将第一个表达式的值设为 NULL 传递给函数,该函数会抛出一个错误。
在这个程序中,我们将第一个表达式的值设为 NULL ,传递给 NULLIF() 函数来与第二个表达式 20 进行比较。
输出
执行上述查询后,产生以下输出结果 –
示例
您还可以将表列作为参数传递给SQL NULLIF() 函数,以检查两列的内容是否相等。假设我们使用以下 CREATE 语句创建了一个名为 Customer 的表 –
接下来,让我们使用 INSERT 语句将一些记录插入到 Customers 表中,如下所示:
以下的SQL查询检查客户 年龄 (第一个表达式)是否等于指定的第二个表达式,如果相等,返回 NULL ;否则返回第一个表达式(客户年龄)在 Customers 表中 −
输出
上述SQL查询生成以下输出 –