? ?
java decode是什么,讓我們一起了解一下。
DECODE是Oracle公司獨(dú)家提供的功能,是一個(gè)功能很強(qiáng)的函數(shù)。在邏輯編程中,經(jīng)常用到If–Then–Else進(jìn)行邏輯判斷,在DECODE的語(yǔ)法中,實(shí)際上就是邏輯處理過(guò)程。
如何用If–Then–Else進(jìn)行邏輯判斷?
它的邏輯處理過(guò)程如下:
DECODE(value, if1, then1, if2,then2, if3,then3, . . . else )
Value 代表某個(gè)表的任何類型的任意列或一個(gè)通過(guò)計(jì)算所得的任何結(jié)果。當(dāng)每個(gè)value值被測(cè)試,如果value的值為if1,Decode 函數(shù)的結(jié)果是then1;如果value等于if2,Decode函數(shù)結(jié)果是then2;等等。事實(shí)上,可以給出多個(gè)if/then 配對(duì)。如果value結(jié)果不等于給出的任何配對(duì)時(shí),Decode 結(jié)果就返回else 。
需要注意的是,這里的if、then及else 都可以是函數(shù)或計(jì)算表達(dá)式。
decode函數(shù)常用的方法有三種,分別是:
1、使用decode判斷字符串是否一樣。
2、使用decode比較大小。
3、使用decode函數(shù)分段。
我們以使用decode判斷字符串是否一樣為例,來(lái)測(cè)試實(shí)戰(zhàn)用法。
DECODE(value,if1,then1,if2,then2,if3,then3,...,else)。含義為:IF 條件=值1 THEN RETURN(value 1)ELSIF 條件=值2 THEN RETURN(value 2) ......ELSIF 條件=值n THEN RETURN(value 3)ELSE RETURN(default)END IF進(jìn)行sql測(cè)試:
select?empno,decode(empno,7369,'smith',7499,'allen',7521,'ward',7566,'jones','unknow')?as?name?from?emp?where?rownum<=10
輸出結(jié)果:
7369?smith 7499?allen 7521?ward 7566?jones 7654?unknow 7698?unknow 7782?unknow 7788?unknow 7839?unknow 7844?unknow
以上就是小編今天的分享了,希望可以幫助到大家。