Oracle nvl()函数处理null值

首先我先说一下什么是Oracle的函数,曾经有一位大牛,让我说说熟悉的oracle函数,我当时竟一头雾水,心想“什么oracle函数啊,不就是那些SQL语句吗“,当时我竟然说出了select之类的回答,他几乎要生气,反复强调:“我说了是Oracle函数”,后来他讲,函数可以理解为带有括号的(),后来我慢慢地懂事了之后,就经常百度oracle函数,每次有面试或者复习的时候,我都刻意练练SQL的函数。

使用nvl函数处理null值:

Eg:计算每个人的全年的收入包括月薪和年终津贴

(1)           年薪是(月薪)*12+绩效;

(2)           但绩效(comm)有null值,当comm是null值时,月薪+绩效的结果也是null值;

(3)           所以,当comm为null值时,需要把它当做0来处理。哪个函数能胜此重任呢?nvl();

(4)           nvl()相当于一条if..else语句,如果字段不为空,取原值;

select ename,sal*12 +nvl(comm,0) as 年薪 from emp;

转载于:https://www.cnblogs.com/7758521gorden/p/8047140.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值