oracle 常用函數 -持續更新

函數分爲單行函數和多行函數

單行函數
單行函數對每一行都會執行輸出結果

函數 參數 描述
ascii(x) x:任意字符 返回指定字符對應的十進制數

舉例:

select ascii('A') A,ascii('a') A,ascii('0') zero from dual;
函數 參數 描述
chr(x) x:數字 給定數字返回對應字符

舉例:

select chr(54740) zhao,chr(65) chr65 from dual;
函數 參數 描述
concat(x,y) x:

舉例:

select concat('你好啊~','我的朋友!'),concat (xm,'你好!')  from emp;
等同於:select '你好啊~'||'我的朋友!',xm||'你好!'  from emp;
函數 參數 描述
initcap(x) x:字符串 返回字符串並將首字母大寫

舉例:

select initcap('smith') hh from dual;
函數 參數 描述
instr(c1,c2,i,j) c1:被搜索的字符串 c2:希望搜索到的字符串 i:搜索開始的位置,默認爲1 j:出現的位置,搜索到第幾個時結束 返回字符串並將首字母大寫

舉例:

select  instr('asdfgasdfg','as',1,2) from dual;
函數 參數 描述
length( c) c:字符串 返回字符串的長度,中文和英文字符相同長度

舉例:

select length('小腿') from dual; //結果2
函數 參數 描述
upper( c) c:字符串 將字符串中英文字母轉換爲大寫

舉例:

select upper('adc 的') from dual;
函數 參數 描述
exp( n) n:數字 獲取e 的n次方

舉例:

select exp(8) from dual;
函數 參數 描述
power( m,n) m:底數 n:指數 計算m的n 次方值

舉例:

select power(2,8) from dual;
函數 參數 描述
round( m,n) m:要四捨五入的數 n:指定的位數 大於0時表示要保留的小數,小於0時表示從個位向左的第幾位開始四捨五入 四捨五入

舉例:

select round(234.456,2),round(234.456,-2) from dual;
函數 參數 描述
trunc( m,n) m:要截取的數 n:指定的位數 大於0時表示從小數點後幾位開始截取,小於0時表示從個位向左的第幾位開始截取,個位到該位換成0 截取數

舉例:

select trunc(210.546,2),trunc(234.456,-2) from dual; -- 210.54 200
函數 參數 描述
add_months( date,n) date:日期 n 增加幾個月 大於0時表示增加,小於0時表示減少,必須爲整數 增加月份

舉例:

select add_months(to_date('1999-06-12','yyyy-mm-dd'),2) from dual; 
函數 參數 描述
to_char( str,formatStr) str:日期字符/其他字符 formatStr:格式化字符 按指定格式轉換爲字符串

yyyy :
mm:
dd:
hh24: 24小時制 時
hh12: 12小時制 時
mi:
ss:
舉例:

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss' ) from dual; 
函數 參數 描述
trim( tstr from str) tstr:要被去掉的字符 不填時默認爲空格,只能有一個字符 str:字符串 去掉首位指定的字符

舉例:

select trim('a' from 'aaddffaa' ) from dual;  -- ddff
函數 參數 描述
last_day( date) date:日期 返回指定日期的最後一天

舉例:

select last_day(sysdate) from dual;
函數 參數 描述
moths_between( date1,date2) date1: 指定日期1 date2:指定日期2 返回date1與date2 之間相隔的月份(date1-date2)

舉例:

select months_between(to_date('1998-03-22','yyyy-mm-dd'),to_date('1998-04-22','yyyy-mm-dd')) from dual;
函數 參數 描述
next_day( date,str) date: 指定日期 str:星期幾 如 星期一、星期二 返回距離date 最近的下一個星期幾的日期

舉例:

select next_day(sysdate,'星期二') from dual;
函數 參數 描述
decode( n,match1,data1,match2,data2,…) n: 被匹配的變量 match1:匹配字符1,data1:返回內容1 將變量進行匹配,返回對應的內容,類似於switch,未匹配到返回空字符

舉例:

select decode( 10 ,10,'10號部門'20'20hao',30,'30hao') from dual;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章