oracle內置函數
一 字符串類型
1 CONCAT(A,B) 兩個字段ab連接
2 A||B 字段連接,可以連接多個
3 LENGTH(char \ varchar2) 返回字符串長度
4 LOWER 所有字母小寫
5 UPPER 所有字母大寫
6 INITCAP 首字母大寫,其余小寫,如果單詞間有空格,每個單詞首字母都大寫
7 TRIM (char1 from char2) 刪掉char2兩邊的char1,註意,char1只能有一個字符
8 LTRIM (char1,char2) 從car1左邊開始,char2中所含有的字符,都會被刪掉,直到遇到char2中不存在的字符。
9 RTRIM(char1,char2)從char1右邊開始,刪掉在char2中出現過的所有字符,直到遇到char2中沒有出現過的字符
10 LPAD (str1,n,‘$’) str1是要操作的字符串,n是目標長度,$是替換符號。str1不足長度n,不足的位左邊補$,超出n位的話,從左向右截取n位
11 RPAD (str1,n,‘$’) str1是要操作的字符串,n是目標長度,$是替換符號。str1不足長度n,不足的位右邊補$,超出n位的話,也是從左向右截取n位
12 SUBSTR (str,index,length) 操作str字符串,從左第index位,開始截取,長度為length,如果index是負數,從右數第index位開始截取,若不指定length,截取到最後
13 INSTR (str1,str2,m,n) 檢查str2在str1中出現的位置,m表示從哪裏開始檢查,n表示出現的次數,mn默認都是1
二 數值操作
1 ROUND(num,index) round(45.798,2)個位index為0,向右移兩位是9,看下一位是8,進一,得45.80。 round(45.678,-1)向左一位,4,下一位5進一得50
2TRUNC(m,n) 直接截取 trunc(45.678,2) 從個位右兩位7,後面截掉的45.67
3MOD(m,n) m%n
4 CEIL(A) 向上取整
5FLOOR(b) 向下取整
三 日期
1 TO_CAHR(date,‘’YYYY-MM-DD‘’) 將date轉化為’YYYY-MM-DD‘格式,格式可以自己定義,但定義時要註意系統不能識別的字符要用雙引號括起來
2 LAST_DAY(DATE) 返回date日期當月最後一日
3 ADD_MONTHs(DATE,i)返回date加上i個月是哪一天
4 MONTHS_BETWEEN (DATE1,DATE2)兩個日期之間相差幾個月
5 NEXT_DAY(DATE,char1) 從日期的下一天開始找,第一個char1 , char1可以取值星期幾,英文星期幾,1-7,註意1是星期日,依次後推。
6 LAEST(A,B,C……)找到最小
7 GREAST(A,B,C……)找到最大
8 EXTRACT(year from date) 從date中抽取你想要元素year month 或者day
9 NVL(arg1,arg2) 若arg1不為空,返回arg1,若為空,返回arg2
10 NVL2(arg1,arg2,arg3) 若arg1不為空,返回arg2,若arg1為空,返回arg3
oracle內置函數