SQL中Case When Then的用法。
我想把CaseWhen用在Where里,例如:如果R.conclusion='N'那么R.result的选择条件为'A'或'B'。WhereR.resultin(case...
我想把Case When用在Where里,例如:
如果R.conclusion='N'那么R.result的选择条件为'A'或'B'。
Where
R.result in (case when R.conclusion = 'N' then ('A','B) End)
这个写法总是报错说没有右括号。有什么解决方法吗? 谢谢。 展开
如果R.conclusion='N'那么R.result的选择条件为'A'或'B'。
Where
R.result in (case when R.conclusion = 'N' then ('A','B) End)
这个写法总是报错说没有右括号。有什么解决方法吗? 谢谢。 展开
2个回答
2012-11-19
展开全部
case when R.conclusion = 'N' then 'A' else 'B' end
追问
这位兄弟谢谢你的回答,但是你理解错了我的意思。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
case when R.conclusion='N' then 'A' when R.conclusion='N' then 'B' end
或者
case R.conclusion when 'N' then 'A' when 'N' then 'B' end
或者
case R.conclusion when 'N' then 'A' when 'N' then 'B' end
追问
Case When 看到第一个符合的条件就不向下去了吗?
追答
是的,貌似返回值只能是'A'。
case的返回值只能有一个。不能返回两个值的。你要想实现'A' ‘B’两个值同时显示在一个结果集中,你可以这样。
Where
R.result=(case when R.conclusion='N' then 'A' end,case when R.conclusion='N' then 'B' end)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |