【发布时间】:2017-02-01 20:00:49
【问题描述】:
我对 CASE 语句有疑问。我的案例陈述如下所示:
CASE myField1
WHEN 1 THEN 'Jump'
WHEN 2 THEN 'Sleep'
WHEN 3 THEN 'Eat'
WHEN 4 THEN 'Run'
WHEN 5 THEN 'Break'
WHEN 6 THEN 'Move'
WHEN 7 THEN 'Stop'
ELSE NULL END AS TestColumn,
在此语句中,我必须根据其他字段的值再添加一个初始值。因此,如果 myField2 等于 1,则在每个 WHEN 选项的末尾可能会有一个字母 A。如果不是,那么我不会输入字母 A。输出应该是这样的:
Jump A
Sleep
Eat A
Run
Break
Move A
Stop
如何检查 SQL CASE 中的第二个字段并连接现有单词的值?如果有人可以提供帮助,请告诉我。谢谢!
【问题讨论】:
-
简单地连接另一个CASE:
|| CASE WHEN Field2 = '1' THEN ' A' ELSE '' END -
@dnoeth 好吧,
+在 SQL Server 中不是||。 -
@AaronBertrand:我应该知道,但我已经习惯了标准 SQL :-)(我忽略了 SS2008 标签)
标签: sql sql-server-2008 case