如何评估两种不同输出的相同条件。 例如:
select case
when 1 = 1 and 2 = 2 then 'one'
when 1 = 1 and 2 = 2 then 'Two'
end
如何使此语句执行两次。 其余列具有相同的数据。 我尝试了几种但没有运气。 谢谢。
答案 0 :(得分:1)
据我了解,您希望一次使用复杂条件 -
您可以将结果存储在OUTER APPLY
(或CROSS APPLY
)字段
像这样:
select case when condition.is_true = 1
then 'one'
else null
end as one,
case when condition.is_true = 1
then 'two'
else null
end as two
from table_name
outer apply
(
select case when 1 = 1 and 2 = 2
then 1
else 0
end as is_true
)condition