在SQL中,DECODE
函數(shù)可以用于實(shí)現(xiàn)簡(jiǎn)單的邏輯判斷和條件判斷。其語(yǔ)法如下:
DECODE(expression, search1, result1, search2, result2, ..., default_result)
其中,expression
是要進(jìn)行比較的表達(dá)式,search1
、search2
等是要進(jìn)行比較的值,result1
、result2
等是對(duì)應(yīng)匹配值的結(jié)果,default_result
是默認(rèn)結(jié)果。DECODE
函數(shù)會(huì)對(duì)expression
進(jìn)行逐個(gè)比較,如果找到了匹配的值,則返回對(duì)應(yīng)的結(jié)果,如果沒有找到匹配的值,則返回默認(rèn)結(jié)果。
例如,下面的SQL語(yǔ)句使用DECODE
函數(shù)根據(jù)score
的值輸出不同的結(jié)果:
SELECT name,
DECODE(score, 90, 'A',
80, 'B',
70, 'C',
'D') as grade
FROM students;
在上面的例子中,如果score
的值為90,則返回’A’,如果為80,則返回’B’,以此類推,如果沒有匹配的值,則返回’D’。