ORACLE里查询怎样写if语句啊?

表里有两字段,毛利润mlr预期利润yqlr这2个字段有一个字段是肯定有值的,但是不知道是哪个有值,所以查询利润的时候,如果毛利润为空就查询预期利润,如果预期利润为空就查询... 表里有两字段,
毛利润 mlr
预期利润 yqlr

这2个字段有一个字段是肯定有值的,
但是不知道是哪个有值,所以查询利润的时候,如果毛利润为空就查询预期利润,如果预期利润为空就查询毛利润,
这个有判断的查询语句怎样写?
展开
 我来答
a_day_by_day
2009-05-05 · TA获得超过104个赞
知道答主
回答量:50
采纳率:0%
帮助的人:0
展开全部
首先要确保这里的 空值 是 NULL,还是0,或是''。

如果是NULL,则:

select NVL(mlr,yqlr) as result from table_name

select NVL2(mlr,mlr,yqlr) as result from table_name (9i及之后)

如果是0:
select NVL(NULLIF(mlr,0),yqlr) as result from table_name (9i及之后)

如果是'',可以参照上面处理

如果是其它情况的话,可能还要转换判断一下!

以上仅参考!
xzqjjcc
2009-05-05 · TA获得超过644个赞
知道小有建树答主
回答量:95
采纳率:0%
帮助的人:0
展开全部
select mlr from 表名 where yqlr is NULL;
select yqlr from 表名 where mlr is NULL;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
82104167
2009-05-05 · TA获得超过207个赞
知道答主
回答量:522
采纳率:0%
帮助的人:263万
展开全部
select mlr from 表名 where yqlr is NULL;
select yqlr from 表名 where mlr is NULL
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式