ORACLE 日期時間處理函式

2021-05-26 23:18:41 字數 2015 閱讀 6691

to_char 是把日期或數字轉換為字串

to_date 是把字串轉換為資料庫中得日期型別轉換函式

to_number 將字元轉化為數字

 to_char

使用to_char函式處理數字

to_char(number, '格式')

to_char(salary,』$99,999.99』);

使用to_char函式處理日期

to_char(date,』格式』);

 to_number

使用to_number函式將字元轉換為數字

to_number(char[, '格式'])

 to_date

使用to_date函式將字元轉換為日期

to_date(char[, '格式'])

 數字格式格式

9 代表乙個數字

0 強制顯示0

$ 放置乙個$符

l 放置乙個浮動本地貨幣符

. 顯示小數點

, 顯示千位指示符

 日期格式

格式控制 描述

yyyy、yyy、yy 分別代表4位、3位、2位的數字年

year 年的拼寫

mm 數字月

month 月的全拼

mon 月的縮寫

dd 數字日

day 星期的全拼

dy 星期的縮寫

am 表示上午或者下午

hh24、hh12 12小時制或24小時制

mi 分鐘

ss 秒鐘

sp 數字的拼寫

th 數字的序數詞

「特殊字元」 假如特殊字元

hh24:mi:ss am 15:43:20 pm

日期例子:

select to_date('2006-05-01 19:25:34', 'yyyy-mm-dd hh24:mi:ss') from dual

select to_date('2006-05-01 19:25', 'yyyy-mm-dd hh24:mi') from dual

select to_date('2006-05-01 19', 'yyyy-mm-dd hh24') from dual

select to_date('2006-05-01', 'yyyy-mm-dd') from dual

select to_date('2006-05', 'yyyy-mm') from dual

select to_date('2006', 'yyyy') from dual

日期說明:

當省略hh、mi和ss對應的輸入引數時,oracle使用0作為default值。如果輸入的日期資料忽略時間部分,oracle會將時、分、秒部分都置為0,也就是說會取整到日。

同樣,忽略了dd引數,oracle會採用1作為日的預設值,也就是說會取整到月。

但是,不要被這種「慣性」所迷惑,如果忽略mm引數,oracle並不會取整到年,取整到當前月。

注意:

1.在使用oracle的to_date函式來做日期轉換時,可能會直覺地採用「yyyy-mm-dd hh:mm:ss」的格式作為格式進行轉換,但是在oracle中會引起錯誤:「ora 01810 格式**出現兩次」。如:select to_date('2005-01-01 13:14:20','yyyy-mm-dd hh24:mm:ss') from dual;原因是sql中不區分大小寫,mm和mm被認為是相同的格式**,所以oracle的sql採用了mi代替分鐘。select to_date('2005-01-01 13:14:20','yyyy-mm-dd hh24:mi:ss') from dual;

2.另要以24小時的形式顯示出來要用hh24

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

select to_char(sysdate,'yyyy-mm-dd hh24:mm:ss') from dual;//mm會顯示月份

Oracle時間日期處理方法

1 用於擷取年 月 日 時 分 秒 extract 函式 extract year from sysdate year extract month from sysdate month extract dayfrom sysdate day extract hour from sysdate hou...

Oracle常用日期處理函式

months between 兩個時間之間的月數,如下面為2011 10 10 與 2011 5 30 兩個日期之間的月數10月10日 5月30日 select months between to date 2011 10 10 yyyy mm dd to date 2011 5 30 yyyy m...

SQL常用日期時間處理函式

select getdate select datepart mm,getdate select datepart yy,getdate select datepart dd,getdate select datepart dy,getdate select datepart wk,getdate ...