1. 程式人生 > 其它 >Oracle中decode函式的用法解析

Oracle中decode函式的用法解析

技術標籤:oracle

decode函式的兩種形式

1. decode(條件,值1,返回值1,值2,返回值2,... ,值n,返回值n,預設值)

該函式的含義如下:

​
IF 條件=值1 THEN
    RETURN(返回值1)
ELSIF 條件=值2 THEN
    RETURN(返回值2)
    ......
ELSIF 條件=值n THEN
    RETURN(返回值n)
ELSE
    RETURN(預設值)
END IF

​

2.decode(欄位或欄位的運算,值1,值2,值3)

這個函式執行的結果是,當欄位或欄位的運算的值等於值1時,該函式返回值2,否則返回值3,當然值1,值2,值3也可以是表示式,這個函式使得某些SQL語句簡單了。

sign()函式

sign()函式根據某個值是0、正數還是負數,分別返回0,1,-1。

示例:

select id,sign(id-2) from table;

執行結果:

lpad()函式

在欄位id前邊補欄位0且長度為2

select lpad(id,2,0) from table;

執行結果

decode函式的使用場景參考部落格:https://blog.csdn.net/qichangjian/article/details/88975499

SQL功底在於平時的積累,後續會持續總結。