如何在查询语句中把空值(null),输出为0?

 我来答
娱乐小八卦啊a
高粉答主

2020-04-07 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117853

向TA提问 私信TA
展开全部

MYSQL可用:

select cource.c_id,cource.c_name,cource.c_num,ifnull(student.count_c_id,'lattice') from cource 

left join 

(select c_id,count(s_id) as count_c_id from cource_student group by c_id) as student

on cource.c_id=student.c_id;

在遇到多张表查询时,很可能查一个关联数值时,并没有这条关联记录,所以查询到的结果是null,通常需要把这个结果处理成0或者其他。这时候就用isNULL(字段,0)。

扩展资料

SQL NULL 值

NULL 值是遗漏的未知数据。默认地,表的列可以存放 NULL 值。

NULL 值的处理方式与其他值不同。

NULL 用作未知的或不适用的值的占位符

注释:无法比较 NULL 和 0;它们是不等价的。

sql之null、空字符串、0的区别:

1、'' 表示空字符串,判断'' 用  ='' 或 <>'' , 

2、null表示空值,数值未知,没有两个相等的空值,判断用 is null 或 is not null 

例如:tran_heating_id_!=5 想筛选出所有tran_heating_id_不是5的客户信息,但是这样并不能筛出tran_heating_id_为null的客户信息

(因为null是值不确定的情况),需要用is null筛选。

3、0表示值为‘0’。

奔驰M888
推荐于2018-03-14 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1846
采纳率:0%
帮助的人:2704万
展开全部
利用null函数:

SqlServer: isnull(字段,0)
oracle: nvl(字段,0)
access: iif(isnull(字段),0,字段)
mysql: ifnull(字段,0);

---
以上,希望对你有所帮助。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
alex_hy
2009-09-20 · TA获得超过1.3万个赞
知道大有可为答主
回答量:2601
采纳率:100%
帮助的人:980万
展开全部
isnull(a,0)
或者
case a when null then 0 else a end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fhddjsjdjjjx
2009-09-20 · TA获得超过2124个赞
知道大有可为答主
回答量:3281
采纳率:0%
帮助的人:1923万
展开全部
不可能的,null与0不同。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华夏日长兴
2009-09-20 · TA获得超过9592个赞
知道大有可为答主
回答量:6305
采纳率:85%
帮助的人:3726万
展开全部
select isnull(a,0) from table
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式