3. Null值的注意事项

Oracle的空值并不是一个值,它和‘’是不同的,一般用Null来判断。

select * from lyy_11 a where a.acc_no is null

下面来说一下Null值得一些注意事项:

(1) Null <> Null
记住Null和Null是不相等的,判断一个字段 等于 等一个字段, 当两个字段 都为null时是无法匹配出来的。

(2)如果表的某列中含有空值,当该空值要参与计算时,计算的结果依然是空值,一般用NVl来处理空值

下面一个查询,balance存在空值,直接计算得到的结果还是空值,如果对空值做了nvl转换为0再计算就可以得到正确结果了。
在这里插入图片描述

(3)null 与 聚合函数

当某列中含有null的记录,使用sum,min、max,avg等都会把null记录忽略掉,唯有count是一个例外,会把null包含进去。
在这里插入图片描述
上面查询使用avg函数的平均值 实际是除去null值的平均数。

所以我们在做统计分析的时候一定要提前处理空值记录,否则影响我们数据统计的准确性。

在Java中,`.equal`方法用于比较两个对象的内容是否相等,其方法签名如下: ```java public boolean equals(Object obj) ``` 其中,obj是要比较的对象,该方法返回一个boolean类型,true表示这两个对象的内容相等,false表示不相等。需要注意的是,如果两个对象都为null,也会返回true。 在使用`.equal`方法时需要注意以下几点: 1. `.equal`方法是用来比较对象的内容是否相等,而不是比较对象的引用是否相等。即使两个对象的引用不同,但是它们的内容相等,也可以使用`.equal`方法得到true的结果。 2. 在比较之前需要先判断对象是否为null,否则会抛出NullPointerException异常。比如可以使用`Objects.equals(obj1, obj2)`方法来比较两个对象是否相等,该方法会自动处理null的情况。 3. 如果一个类没有重写`.equal`方法,那么默认使用Object类的`.equal`方法,该方法比较的是两个对象的引用是否相等。因此,如果需要比较两个对象的内容是否相等,需要在该类中重写`.equal`方法。 4. 在重写`.equal`方法时,需要注意以下几点: - `.equal`方法必须是对称的,即如果a.equals(b)返回true,那么b.equals(a)也必须返回true。 - `.equal`方法必须是传递性的,即如果a.equals(b)返回true,b.equals(c)也返回true,那么a.equals(c)也必须返回true。 - `.equal`方法必须满足一致性,即如果两个对象的内容没有发生变化,那么无论调用多少次`.equal`方法,结果都应该相同。 - `.equal`方法必须和hashCode方法保持一致,即如果两个对象的内容相等,那么它们的hashCode也必须相等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值