Oracle的decode()函數(shù)可以用來在查詢結(jié)果中根據(jù)條件返回不同的值。其語法如下:
DECODE(expression, search1, result1, search2, result2, ..., default_result)
expression
是要比較的表達(dá)式或列search1
, search2
等是要匹配的值result1
, result2
等是對(duì)應(yīng)匹配值的返回結(jié)果default_result
是在沒有匹配到任何條件時(shí)的默認(rèn)返回值例如,下面的示例使用decode()函數(shù)將性別字段的值替換為中文名:
SELECT name, DECODE(gender, 'M', '男', 'F', '女', '未知') AS chinese_gender
FROM employees;
這將查詢employees表中的name列,并將gender列的值替換為中文性別,如果gender列的值為’M’,則返回’男’,如果為’F’,則返回’女’,否則返回’未知’。