我有几个条件,结果应该是一样的。我在网上搜索了一下这样的东西:
CASE ProductLine
WHEN 'R' THEN 'Road'
WHEN 'M' THEN 'Mountain'
WHEN 'T' THEN 'Touring'
WHEN 'S' THEN 'Other sale items'
ELSE 'Not for sale'
END
这很好,但不是我需要的,对我而言,更像R,M,T和S都有相同的结果,例如A,B,C,D没有。我该怎么做?我无法与OR连接,或者至少我没有设法:)。这样的事可能吗?
CASE ProductLine
WHEN 'R' OR 'M' OR ... THEN 'Road'
ELSE 'Not for sale'
END
答案 0 :(得分:7)
更改为"searched" CASE expression。你有一个“简单”的CASE表达式
CASE
WHEN ProductLine IN ('R', 'M', ...) THEN 'Road'
ELSE 'Not for sale'
END
从上面的MSDN链接:
Simple CASE expression:
CASE input_expression
WHEN when_expression THEN result_expression [ ...n ]
[ ELSE else_result_expression ]
END
Searched CASE expression:
CASE
WHEN Boolean_expression THEN result_expression [ ...n ]
[ ELSE else_result_expression ]
END