Oracle 轉換函式To_char、to_date、to_number

來源:互聯網
上載者:User

To_char、to_date、to_number

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.