oracle通用函数

NVL(数字|列,默认值):如果显示的数字是null,则使用默认值表示

NVL2(数字|列,返回结果1(不为空显示),返回结果2(为空显示)):数字为null显示返回结果2,不为null显示返回结果1

NULLIF(表达式1,表达式2):判断两表达式结果是否相等,相等返回NULL,不等返回表达式1

DECODE(列|值,判断值1,显示结果1,判断值2,显示结果2,...,默认值):查看某一列与哪个判断值相等,返回与之相等的结果,没有则返回默认值

CASE 列|数值 WHEN 表达式1 THEN 显示结果1...ELSE 表达式n...END:实现多条判断,WHEN中写条件,THEN中写操作,不满足WHEN就执行ELSE中表达式

COALESCE(表达式1,表达式2,表达式3...表达式n):逐个判断表达式,直到找到不为null的表达式,找到则返回表达式结果,没有返回NULL

NVL处理默认值:

select (sal+NVL(comm,0))*12 年薪 from emp;

NVL2处理默认值:

select NVL2(comm,sal+comm,sal) 工资 from emp;

NULLIF使用:

select NULLIF(1,1),NULLIF(1,2) from dual;

DECODE:

SELECT DECODE(job,'CLERK','业务员','SALESMAN','销售人员','MANAGER','经理') job from emp;

注意:判断内容中没有符合要求的结果将返回null

CASE:

SELECT CASE job WHEN 'CLERK' THEN sal*1.2 ELSE sal*1.5 END 新工资 from emp;

COALESCE:

SELECT COALESCE(comm,1000,100),COALESCE(comm,null,null) from emp;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值