decode函数用法
来源:互联网 发布:明朝灭亡知乎 编辑:程序博客网 时间:2024/06/08 06:39
Oracle Decode函数是一个功能强大的Oracle特有函数(似乎别的数据库都没有这样的函数)
函数原型
Decode(条件,值1,转换值1,值2,转换值2……,缺省值) 相当于if then 或者替代where条件
用法:
1,替代where 用于一些条件和判断的过滤
网上范例:
SELECT COUNT(DECODE(DEPT_NO,0020,’X’,NULL)) D0020_COUNT,
COUNT(DECODE(DEPT_NO,0030,’X’,NULL)) D0030_COUNT,
SUM(DECODE(DEPT_NO,0020,SAL,NULL)) D0020_SAL,
SUM(DECODE(DEPT_NO,0030,SAL,NULL)) D0030_SAL
FROM EMP WHERE ENAME LIKE ‘SMITH%’
sum或count时,根据条件做过滤
2,select sum(a) from A 时,A无记录,sum值为null,想当sum为null时,转换为0.可以:
Decode( (select sum(a) from A ) , null , 0 , (select sum(a) from A ) ) 相当与nvl
3,比较大小
select decode(sign(变量1-变量2),-1,变量1,变量2) from dual
============================================================================================================
一、sign函数用于比较大小,语法如下:sign( number )
number 是要测试标志的数字.
If number < 0, then sign returns -1.
If number = 0, then sign returns 0.
If number > 0, then sign returns 1.
二、decode 具有和 IF-THEN-ELSE 一样的功能。decode 函数语法如下:
decode( expression , search , result [, search , result]... [, default] )
如:decode(sign(cj1p-cj2p),1,cj1p,cj2p),若cj1p>cj2p,则返回cj1p,否则返回cj2p
- decode 函数的用法
- decode 函数的用法
- decode 函数用法
- decode函数的用法
- decode函数的用法
- Decode 函数的用法
- decode 函数的用法
- decode函数用法
- decode函数用法
- Oracle-DECODE函数用法
- decode函数用法
- decode函数用法
- decode函数的用法
- Decode函数用法
- oracle decode.oracle 函数用法之decode
- oracle decode函数的用法
- 关于decode函数的用法
- Oracle中decode函数用法
- MySQL数据库备份和还原的常用命令
- PL/SQL基础编程之(十一)[表空间概述、说明、创建][本地管理和字典管理、切换管理方式]
- com技术内幕--读书笔记(8_1)
- 托管非托管Dll动态调用
- hdu 213
- decode函数用法
- 【WCF】使用数字证书加密通讯
- Android Monkey test
- JSTL初级教程
- Administrator账户被禁用 修改办法
- distinct用法
- EXTJS4.0 gridpanel 用法笔记~~可编辑的grid
- 黑马程序员-时间转换方法总结
- CDialogBar窗口的悬浮设置