/*通用函式*/
--nvl(exp1,a) 如果exp1為null則返回a,否則返回exp1
select nvl(null,33) from dual;
33--nullif(exp1,exp2) 如果exp1=exp2,則返回空,否則返回exp1
select nullif(32,32) from dual;
空--nvl2(a,b,c) 如果a是null,則返回c,如果a不是null,則返回b
select nvl2(null,'nonull','is null'),nvl2('23','nonull','is null') from dual;
is null nonull
--coalesce(exp1,exp2,exp3,...expn) n>=2 返回第乙個表示式值不為null的表示式值
select coalesce(null,'haha'),coalesce('haha','hehe')from dual;
haha haha
--case 表示式
select (case '10' when '10' then 'yi3哈' when '20' then '二' else '一' end) from dual;
--decode(a,b,c,d) 如果a=b,則返回c,如果a!=b則返回d
select decode(1,1,2,4) from dual
ORACLE SQL單行函式
單行函式運算元據物件,接受引數返回乙個結果,只對一行資料進行變換,每行返回乙個結果,可以轉換資料型別,可以巢狀,引數可以是一列或乙個值 單行函式包括 字元函式 1 大小寫控制函式 lower 轉小寫 upper 轉大寫 initcap 首字母大寫 2 字元控制函式 concat 拼接字串 subst...
ORACLE SQL 單行函式
sql函式有兩種 1 單行行數 字元函式 數值函式 日期函式 轉換行數 通用行數 2 多行行數 字元行數 2.1大小寫控制函式 lower upper initcap 2.2字元控制函式 concat substr length instr lpad rpad trim replace 字元控制函式...
ORACLE SQL單行函式細節
單行函式有很多,不過有些經常用到又比較複雜 易忘 的概念或函式還是值得提出來做個筆記 首先是有關日期的運算都分先後的,比如 日期四則運算,months between select months between to date 1997 7 7 yyyy mm dd sysdate from dua...