Oracle与Mysql中 count()、sum()、avg() 计算过程中对null的计算

记录数据库某列有空值(Null)时Oracle与Mysql分别有没有统计空值。

一、Mysql数据库

1.Mysql表
在这里插入图片描述

2.查询结果
在这里插入图片描述

结果:通过对id,age字段的查询可以发现,当某列中存在Null时在一个函数内(比如图中的 sum(id)+sum(age) 不在一个函数内,计算结果统计了存在Null的行数据)统计过程中是不统计为Null的整行数据的。

二、Oracle数据库

1.Oracle表
在这里插入图片描述

2.查询结果
在这里插入图片描述
结果:与Mysql执行结果是一样的。

总结:无论是Oracel还是Mysql数据库,在执行count()、sum()、avg()时会有以下情况:

查询情况是否统计null
count(*/1)当为*或者1时,统计null
count(列名)只要存在null,均不会统计null
sum(列名)只要列中存在null,均不会统计null
sum(列n+列m)列n,列m任意一列中存在null时,均不会统计存在null的数据行
avg(列名)只要列中存在null,均不会统计null
avg(列n+列m)列n,列m任意一列中存在null时,均不会统计存在null的数据行
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值