我用的是oracle数据库,在查一个表的时候,有个字段a,它的值有四种,0,1,2,3

我现在要查另一个字段b,它的显示是根据a字段显示的,比如这条数据为a=0,那么我要显示的是b,比=20,那在0下显示20,而1,2,3下我要显示0,怎么做啊,希望大家帮帮... 我现在要查另一个字段b,它的显示是根据a字段显示的,比如这条数据为a=0,那么我要显示的是b,比=20,那在0下显示20,而1,2,3下我要显示0,怎么做啊,希望大家帮帮忙吧,谢谢了
如图
展开
 我来答
micro0369
2012-05-22 · TA获得超过1.2万个赞
知道大有可为答主
回答量:9250
采纳率:85%
帮助的人:4021万
展开全部
select a,case when a=0 then 20 else 0 end b
from tab
追问
但是现在查询的这条数据,不知道a就是0啊,它是不确定的啊,我该怎么写啊,谢谢你了
追答
那应该是这样的:

select a,case when a=0 then b else 0 end b
from tab
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gaoxuhong888
2012-05-22 · 超过19用户采纳过TA的回答
知道答主
回答量:127
采纳率:100%
帮助的人:41.5万
展开全部
1楼的意思就是当a=0 b显示20,其他b都显示0.这不符合你的需求了吗?
追问
恩,是的,但是现在问题是我数据库有好多条数据,我要是按1楼的写的话,就只能把a=0的显示出来,其他的都为0了,但是我的数据里还有a=1的,2的数据啊,那要怎么判断?
追答
case when then 
你看看这个语法,你还可以接着往下判断,同时你还可以使用decode这个函数,
和case when是一样的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
澈F_Z
2012-05-22
知道答主
回答量:22
采纳率:0%
帮助的人:18.7万
展开全部
问题描述的乱七八糟~怪不得浏览次数这么多,没一个回答~、、
追问
怎么是乱七八糟呢,都有人回答的啊,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
songyongganggg
2012-05-22
知道答主
回答量:12
采纳率:0%
帮助的人:1.8万
展开全部
话都说不清楚还问问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cooldanny
2012-05-22 · 超过19用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:53.7万
展开全部
SELECT a, decode(a,0,b,0) FROM table ;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式