oracle時間問題續之字串 時間格式

2022-04-08 14:24:59 字數 2092 閱讀 9160

oracle時間問題續之字串——時間格式

續前一篇:oracle 時間問題(

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會顯示月份   

摘自 chuhx的部落格

oracle 時間問題

今天用到oracle時間比較,看到網上也有很多,自己就總結了下啊 1,比較兩個時間的大小 也可以是字串表示時間 select from table where to date 欄位1,yyyy mm dd hh24 mi ss to date 2012 2 8 yyyy mm dd hh24 mi ...

oracle時間問題 與case then

select from nls session parameters where parameter nls date language 修改會話的預設日期格式 alter session set nls date format yyyy mm dd 臨時改變一下會話的預設語言,以識別類似 12 m...

字串操作 續

第三節字串操作 續 1.字串中新增字串 在字串之前加入字串用insert 函式實現,而在字串之後加入字串用apend 函式實現。cstring str t this as a long story str.insert 0,諺語 printf n s str 漢語意思為 說來話長!printf n ...