T-SQL中的单行IF

Yas*_*ani 1 t-sql if-statement sql-server-2008-r2

在C#中我们可以编写单个if语法:

string test;
int value=1;
test = value>=1 ? "is bigger or equal one" : "is less than one";
Run Code Online (Sandbox Code Playgroud)

SQL Server 2008 R2中的T-SQL有单一IF语法吗?

Spa*_*rky 8

SQL Server 2008没有,您必须使用CASE语句...

SQL Server 2012确实具有以下功能:

SELECT IIF ( @FirstArgument > @SecondArgument , 'TRUE', 'FALSE' ) 
 AS [Output Using IIF Logical Function]
Run Code Online (Sandbox Code Playgroud)


Bog*_*ean 6

DECLARE @test VARCHAR(50);
DECLARE @value INT = 1;

SET @test = CASE WHEN @value >= 1 THEN 'is bigger or equal one' ELSE 'is less than one' END
Run Code Online (Sandbox Code Playgroud)