Oracle中decode()函数的使用技巧

海外服务器 (508) 2015-11-11 14:09:45

一、软件环境

 

1、windows nt4.0+oracle 8.0.4

2、oracle安装路径为:c:\orant

 

二、含义解释

 

Oracle中decode()函数的使用技巧

 

三、使用方法

 

1、比较大小

select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值

sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1

例如:

变量1=10,变量2=20

则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。

2、表、视图结构转化

现有一个商品销售表sale,表结构为:

 

Oracle中decode()函数的使用技巧

 

想要转化为以下结构的数据:

 

Oracle中decode()函数的使用技巧

 

结构转化的sql语句为:

 

Oracle中decode()函数的使用技巧

THE END