SQL IIF() 函数
SQL IIF() 函数用于验证条件是真还是假。
它接受三个参数,即布尔表达式、真值和假值,并根据布尔表达式在 SQL Server 中的值是真还是假返回其中之一。如果条件为真,则返回真值;否则返回假值。
注意 - 如果表达式不是布尔表达式或无效表达式, IIF() 函数将抛出错误。
语法
下面是 SQL IIF() 函数的语法:
参数
- boolean_expression - 它是一个有效的布尔表达式。
-
true_value - 它是一个可以是任何数据类型的值,当布尔表达式求值为 true 时返回。
-
false_value - 它是一个可以是任何数据类型的值,当布尔表达式求值为 false 时返回。
返回值
该函数根据布尔表达式返回两个值之一。
示例
在以下示例中,我们使用SQL的 IIF() 函数来验证布尔表达式 ’10 >5′是否求值为true(返回1)还是false(返回0)。
输出
执行以上程序后,将输出以下结果:
示例
以下是SQL中 IIF() 函数的另一个示例,我们在这里使用这个函数来比较两个字符串 ‘Hello’ 和 ‘World’ 的长度,以确定哪个更长。
输出
下面是上述语句的输出−
示例
如果我们传递一个无效的boolean_expression,这个函数会抛出一个错误。
在这个示例中,我们使用SQL的 IIF() 函数来验证boolean_expression ‘a >b’是否被评估为 true(返回’valid’) 或 false(返回’invalid’) 。
输出
上述SQL语句生成以下输出:
示例
您还可以将表列作为参数传递给SQL IIF() 函数,以验证哪个 客户的薪水 大于特定金额。假设我们使用以下 CREATE 语句创建了名为 Customer 的表-
现在,让我们使用下面所示的 INSERT 语句将一些记录插入到 Customers 表中-
以下SQL查询验证了在“Customer’s”表中薪水小于 2000 的客户:
输出
以上SQL查询生成以下输出−
注意 − 您还可以使用 IIf() 函数来检查年龄大于指定年龄标准的客户。