我正在尝试转换此案例陈述:
(CASE UPPER(dc.source_name) WHEN 'DART' THEN dc.ad_campaign_id ELSE dc.cfid END) AS rodeo_order_id
进入where
子句中的条件。
感谢任何帮助!
谢谢, 小号
答案 0 :(得分:1)
这是不可能的。 Select子句中的Case-Expression决定所有返回行的返回列的内容,而where子句定义返回哪些行。
你必须更好地解释你有什么问题才能得到答案。
答案 1 :(得分:0)
我必须承认我不明白需要这个,但这样的事情可能是解决方案(假设ad_campaign_id
和cfid
属于同一类型):
select dc1.ad_campaign_id
from <table> dc1
where UPPER(dc.source_name) = 'DART'
UNION
select dc2.cfid
from <table> dc2
where UPPER(dc.source_name) != 'DART'