SQL 函数中的空值指的是 SQL 函数的参数存在空值,当 SQL 函数的参数为空值时,大多数标量函数都返回 NULL
,分析函数会忽略空值。您可以通过 NVL
函数的返回值确定空值。
NVL
函数的表达式为 NVL(expr1,expr2)
,如果 expr1
不是 NULL
,返回 expr1
,否则返回 expr2
。
如下所示,给定 expr1
参数为 NULL
,查询 NVL(expr1,0)
表达式的返回值。
执行以下语句:
SELECT NVL(NULL,0) FROM DUAL;
查询结果如下:
+-------------+
| NVL(NULL,0) |
+-------------+
| 0 |
+-------------+
expr1
是 NULL
,则表达式 NVL(expr1,0)
的返回值为 0;expr1
不是 NULL
,则表达式的返回值为 expr1
。
在使用 AVG
,MAX
,SUM
,COUNT
等分析函数时,为 NULL
的纪录会被忽略。
如下所示,向 tbl_a 表中插入数据并执行以下语句:
CREATE TABLE tbl_a (col_a varchar2(1), col_b int );
INSERT INTO tbl_a VALUES (NULL, 3);
INSERT INTO tbl_a VALUES (NULL, NULL);
INSERT INTO tbl_a VALUES (NULL, 1);
执行以下语句:
SELECT * FROM tbl_a;
查询结果如下:
+-------+-------+
| COL_A | COL_B |
+-------+-------+
| NULL | 3 |
| NULL | NULL |
| NULL | 1 |
+-------+-------+
查询的结果如下:
SELECT AVG(col_b) FROM tbl_a; -- 结果为 2 ,
SELECT MAX(col_b) FROM tbl_a; -- 结果为 3
SELECT SUM(col_b) FROM tbl_a; -- 结果为 4
SELECT COUNT(col_b) FROM tbl_a; -- 结果为 2
SELECT COUNT(col_a) FROM tbl_a; -- 结果为 0
SELECT COUNT(*) FROM tbl_a; -- 结果为 3
NULL
的纪录被忽略了。
分享题目:创新互联OceanBase教程:OceanBaseSQL函数中的空值
网页网址:http://www.csdahua.cn/qtweb/news25/333325.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网