【发布时间】:2014-09-08 06:02:13
【问题描述】:
我可以在 CASE 语句中使用 WHERE 子句,如下所示?
CASE WHEN A=1 THEN B WHERE C=0 ELSE A END
【问题讨论】:
-
不,你可以用
CASE WHEN A=1 AND C=0做一些事情 -
不,你只是重复
when。 -
不清楚你想在哪里使用它。您是在尝试使用这些条件过滤结果(
WHERE子句),还是有条件地选择列?您可以在WHERE子句中使用布尔逻辑而不是CASE来执行此操作。 -
每一行数据都根据第一个时间进行评估,如果为真则停止,如果为假则进入下一个何时,如果为真则立即停止,如果为假则进入下一个 when... 直到所有 when 被评估然后它进入'else'。每个时间有点像“哪里”