SQL SERVER 2012新增函数之逻辑函数IIF

时间:2022-04-18 07:26:20

前言

SQL SERVER 2012中新增了IIF函数,这个函数在VB或是ACCESS中是存在的。感兴趣的朋友们下面来一起学习学习吧。

格式如下

?
1
iif(布尔表达式,value1,value2)

也就是说如果表达式成立,那么就返回value1,如果不成立,就返回value2.

示例如下

例如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
select iif(30>45,'对','错') as 结果
/*
结果
----
*/
select iif(null=null,'对','错') as 结果
/*
结果
----
*/
select iif(null is null,'对','错') as 结果
/*
结果
----
*/

这让我想起SQLSERVER之前有个函数叫NULLIF,如果两个指定的表达式相等,则返回空值。

?
1
2
3
4
5
6
declare @i int
set @i=null
select NULLIF(@i,null)
/*
NULL
*/

NULLIF上面返回NULL,并不说明两者相等,而是两者不相等时,返回前者,而前者的@i恰巧为NULL造成的。

总结

以上就是关于SQL SERVER 2012新增函数之逻辑函数IIF的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://blog.csdn.net/maco_wang/article/details/22982709