select (case when 第二字段 is not null then 第二字段 else 第一字段 end) 字段名 from table_name;

请问这句(casewhen第二字段isnotnullthen第二字段else第一字段end)我要放在where条件后面第二个字段传值过来怎么写啊帮帮忙,... 请问 这句 (case when 第二字段 is not null then 第二字段 else 第一字段 end)
我要放在where 条件后面 第二个字段传值过来 怎么写啊
帮帮忙,
展开
 我来答
hit_lubin
2011-04-29 · TA获得超过7889个赞
知道大有可为答主
回答量:1554
采纳率:100%
帮助的人:1992万
展开全部
没明白什么意思,不过这个case when可以当成一个字段理解,不要看这么复杂的一个选择,只把这个当成一个字段理解就可以了。
另外你这个CASE WHEN这么复杂的写没什么意义啊,直接用ISNULL(第二字段,第一字段),(ORACLE中使用NVL(第二字段,第一字段))这个完全可以代替你的case when了
您说的传值,怎么讲?
where条件这些都是可以正常使用的
where (case when 第二字段 is not null then 第二字段 else 第一字段 end) = 值
或者where ISNULL(第二字段,第一字段) = 值
就这么正常使用就可以了
追问
where (case when 第二字段 is not null  then 第二字段 else 第一字段 end)  = 5
可以这样写吗
追答
可以的,但是注意类型匹配。你的 = 5是数字类型,那么要求前边的第一字段第二字段都得是数字。
tim_spac
2011-04-29 · TA获得超过3628个赞
知道大有可为答主
回答量:1804
采纳率:100%
帮助的人:1990万
展开全部
(case when 第二字段 is not null then 第二字段 else 第一字段 end)
==>
isnull(第二字段, 第一字段)

"放在where 条件后面 第二个字段传值过来" ? 什么意思 ? 想干什么 ?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式