【发布时间】:2012-08-15 15:07:04
【问题描述】:
我正在尝试在 Microsoft SQL Server 2008 R2 中使用它:
SET @SomeVar = @SomeOtherVar +
IIF(@SomeBool, 'value when true', 'value when false')
但我得到一个错误:
IIF(...)不是可识别的内置函数名
IIF() 是否只兼容更高版本?
我可以使用其他功能吗?
【问题讨论】:
-
如果项目在以前的版本中存在,大多数 BOL 页面的标题下方都有一个“其他版本”链接/下拉菜单。鉴于此页面上没有,我想说这只是 2012 年的功能。
-
IIF()是一个 MS Access 函数。答案中描述的case语句是执行条件语句的ANSI 标准方式。 -
注意像我这样的笨蛋:确保你没有输入
IFF代替IIF。两个是的。一个没有。
标签: sql sql-server-2008 tsql sql-server-2005 sql-server-2008-r2