oracle数据库查询中让空值用0来显示

例如:selectworkbillidfromkf_workbillwhereopdate=sysdate查询到的是空值我想在显示的时候用0显示该怎么写呢... 例如:select workbillid from kf_workbill where opdate=sysdate
查询到的是空值
我想在显示的时候用0显示
该怎么写呢
展开
 我来答
badkano
推荐于2017-10-11 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144777 获赞数:885357
团长

向TA提问 私信TA
展开全部
先不说你空值用0表示的问题
就是opdate=sysdate估计你也很难得到结果,sysdate表示系统当前时间,包含时分秒,你那个opdate怎么可能会和sysdate相等呢?
真的要是把空值用0表示的话,oracle中有nvl函数

select nvl(workbillid,0) from kf_workbill
意思就是把workbillid字段为空的显示成0,当然也可以显示成任何字符或者数字

友情提醒一下:
你那个opdate=sysdate是不是该改成
to_char(opdate,'yyyymmdd')=to_char(sysdate,'yyyymmdd')
百度网友94f02eb
2009-06-05 · TA获得超过8612个赞
知道大有可为答主
回答量:7955
采纳率:74%
帮助的人:4377万
展开全部
select NVL(workbillid, 0) from kf_workbill where opdate=sysdate
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
darezhao
2009-06-05
知道答主
回答量:28
采纳率:0%
帮助的人:27.7万
展开全部
if(select workbillid from kf_workbill where opdate=sysdate

return 0;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
张老汉故事会
2019-06-26
知道答主
回答量:33
采纳率:50%
帮助的人:2.9万
展开全部
使用select nvl(字段,0) from table 就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c5cb39d29
2009-06-05 · TA获得超过177个赞
知道小有建树答主
回答量:239
采纳率:0%
帮助的人:125万
展开全部
nvl学习了
个人建议数据对空和0是两个概念,你在插入数据时最好就能清楚,不然就会需要做这样的事:)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式