Oracle常用函式

2021-08-27 09:43:18 字數 1810 閱讀 6131

在oracle應用中經常用到一些系統的函式來方便應用  今天有時間來小結一下。。

decode函式的格式為:

decode(條件, 值1, 翻譯值1, 值2, 翻譯值2,……,預設值)

實現的功能為,if條件=值1 then return(翻譯值1)

if條件=值2 then return(翻譯值2)

………else return(預設值)

nvl函式的格式為:

nvl(expr1,expr2)

若expr1是null,則返回expr2,否則返回expr1.

substr的格式:

substr('this is a test', 6, 2)          would return 'is'

substr('this is a test', 6)              would return 'is a test'

round 函式(四捨五入) :

select round( number, [ decimal_places ] ) from dual 

引數: 

number : 欲處理之數值

decimal_places : 四捨五入, 小數取幾位( 預設為0 )

concat連線兩個字串;

select concat('029-','88888888')||'轉11'  **號碼 from dual;

length返回字串的長度;

select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.nchar_tst;

substr(string,start,count)

取子字串,從start開始,取count個

select substr('13088888888',3,8) from dual;

ceil返回大於或等於給出數字的最小整數

sql> select ceil(3.1415927) from dual;

add_months增加或減去月份

sql> select to_char(add_months(to_date('199912','yyyymm'),2),'yyyymm') from dual;

last_day返回日期的最後一天

select to_char(sysdate,'yyyy.mm.dd'),to_char((sysdate)+1,'yyyy.mm.dd') from dual;

months_between(date2,date1)給出date2-date1的月份

select months_between('19-12月-1999','19-3月-1999') mon_between from dual;

next_day(date,'day')給出日期date和星期x之後計算下乙個星期的日期

select next_day('18-5月-2001','星期五') next_day from dual;

sysdate用來得到系統的當前日期

select to_char(sysdate,'dd-mm-yyyy day') from dual;

to_char(date,'format')

select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') from dual;

to_date(string,'format')

將字串轉化為oracle中的乙個日期

to_number

將給出的字元轉換為數字

select to_number('1999') year from dual;

Oracle常用函式

一 row number over 資料甲 1 select column name column name,data type,2 row number over partition by column name order by column name row num 3 from test c...

Oracle常用函式

數學函式 1.絕對值 o select abs 1 value from dual 2.取整 大 o select ceil 1.001 value from dual 3.取整 小 o select floor 1.001 value from dual 4.取整 擷取 o select trun...

oracle常用函式

1.concat c1,c2均為字串,函式將c2連線到c1的後面,如果c1為null,將返回c2.如果c2為null,則返回c1,如果c1 c2都為null,則返回null。他和操作符 返回的結果相同 select concat slobo svoboda username from dualuse...