当前位置:去回答>生活百科>Oracle DECODE函数的用法详解?

Oracle DECODE函数的用法详解?

2024-05-19 12:13:44 编辑:join 浏览量:619

Oracle DECODE函数的用法详解?

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、此函数用在SQL语句中,功能介绍如下:

Decode函数与一系列嵌套的 IF-THEN-ELSE语句相似。base_exp与compare1,compare2等等依次进行比较。如果base_exp和 第i 个compare项匹配,就返回第i 个对应的value 。如果base_exp与任何的compare值都不匹配,则返回default。每个compare值顺次求值,如果发现一个匹配,则剩下的compare值(如果还有的话)就都不再求值。一个为NULL的base_exp被认为和NULL compare值等价。如果需要的话,每一个compare值都被转换成和第一个compare 值相同的数据类型,这个数据类型也是返回值的类型。

decode(V1,1,A,2,B,C)

如果V1=1 那么显示A =2显示B 其他显示C 。。。。。。。。

或者说返回的值 ABC

DECODE(x,search,result,default)

将x与search中的值进行比较,如果相等,decode()就返回result,否则返回default

比较经典的用法:

看图

相当于 if... elseif... else

标签:Oracle,DECODE

版权声明:文章由 去回答 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.quhuida.com/life/87907.html
热门文章