SQL SERVER 2012中新增了IIF函数,这个函数在VB或是ACCESS中是存在的。
例如:
select iif(30>45,'对','错') as 结果
/*
结果
----
错
*/
select iif(null=null,'对','错') as 结果
/*
结果
----
错
*/
select iif(null is null,'对','错') as 结果
/*
结果
----
对
*/这让我想起SQLSERVER之前有个函数叫NULLIF,如果两个指定的表达式相等,则返回空值。
declare @i int
set @i=null
select NULLIF(@i,null)
/*
NULL
*/NULLIF上面返回NULL,并不说明两者相等,而是两者不相等时,返回前者,而前者的@i恰巧为NULL造成的。
本文介绍了SQL Server 2012中新增的IIF函数及其用法,并通过示例对比了IIF与NULLIF函数的区别。NULLIF函数用于比较两个表达式,当它们相等时返回NULL。
1107





