2024年6月12日发(作者:)

CASE语句

在某些方面,CASE语句是几种不同语句的一种等价物,这些语句来自你之前学过的

语言。在过程化的编程语言中,下面的语句与CASE的功能相似:

Switch: C、C++、C#、Delphi

Select Case:Visual Basic

Do Case:Xbase

Evaluate:COBOL

我可以肯定还有其他语句,它们来自我多年前以这种或那种形式使用的语言。在许多

方面,在T-SQL中使用CASE语句的最大缺陷是置换运算符而不是流控制语句。

书写CASE语句的方法不止一种:可以使用输入表达式或布尔表达式。第一种选择是

可以使用一个输入表达式,将它与每一个WHEN子句中使用的值进行比较。SQL Server

将其视为简单CASE:

1. CASE

2. WHEN THEN

3. [...n]

4. [ELSE ]

5. END

第二种选择是为每个WHEN子句提供一个表达式(计算结果为TRUE/FALSE)。文档

将其视为搜索CASE:

1. CASE

2. WHEN THEN

3. [...n]

4. [ELSE ]

5. END

或许CASE最大的好处是可以在SELECT语句里"内联"地(即,作为完整的部分)使用

它。这一功能绝对是非常强大的。

1. 简单CASE