首页 > 数据库 > Oracle > null(空值)小结
null不是个好东西,离它远点...
1.null与聚合函数
count()与null
count(null)结果为0; 如果这一列全部为null,用count算出来结果是0
count(column1) 结果为不含有null的column1的个数
count(nvl(column1,0)) 结果为所有行(包括null)
sum()与null
sum(null)结果为null;
如果这一列全部为null,用sum算出来结果也是null
如果这列不全为null,用sum来计算直接排除空行
avg(), max(), min()与sum()相同
提示:善用 nvl(column1,0)
2.null与+-*/(计算)
null参与的计算,结果都是null.null可以作为除数.
SQL> SELECT NULL + 10, NULL - 10, NULL * 10, NULL / 10 FROM dual;
NULL+10 NULL-10 NULL*10 NULL/10
---------- ---------- ---------- ----------
SQL> SELECT 10 / NULL FROM dual;
10/NULL
----------
SQL>
提示:还是好用的 nvl(column1,0)
3.null与关系运算符
where column1 = null 这是一个永远为假的条件(注意和is null有区别)
where column1 <> null 这也是一个永远为假的条件.
null和任何条件相比都永远为假.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12707874/viewspace-1315997/ ,如需转载,请注明出处,否则将追究法律责任。