oracle 的to_char,、to_number,、to_date用法(2010-11-04 17:05:54)關(guān)鍵字: oracle 的to_char、to_number,、to_date用法TO_CHAR 是把日期或數(shù)字轉(zhuǎn)換為字符串 TO_DATE 是把字符串轉(zhuǎn)換為數(shù)據(jù)庫中得日期類型轉(zhuǎn)換函數(shù) TO_NUMBER 將字符轉(zhuǎn)化為數(shù)字 TO_CHAR 使用TO_CHAR函數(shù)處理數(shù)字 TO_CHAR(number, '格式') TO_CHAR(salary,’$99,999.99’); 使用TO_CHAR函數(shù)處理日期 TO_CHAR(date,’格式’); TO_NUMBER 使用TO_NUMBER函數(shù)將字符轉(zhuǎn)換為數(shù)字 TO_NUMBER(char[, '格式']) TO_DATE 使用TO_DATE函數(shù)將字符轉(zhuǎn)換為日期 TO_DATE(char[, '格式']) 數(shù)字格式格式 9 代表一個數(shù)字 0 強(qiáng)制顯示0 $ 放置一個$符 L 放置一個浮動本地貨幣符 . 顯示小數(shù)點 , 顯示千位指示符 日期格式 格式控制 描述 YYYY,、YYY、YY 分別代表4位,、3位,、2位的數(shù)字年 YEAR 年的拼寫 MM 數(shù)字月 MONTH 月的全拼 MON 月的縮寫 DD 數(shù)字日 DAY 星期的全拼 DY 星期的縮寫 AM 表示上午或者下午 HH24、HH12 12小時制或24小時制 MI 分鐘 SS 秒鐘 SP 數(shù)字的拼寫 TH 數(shù)字的序數(shù)詞 “特殊字符” 假如特殊字符 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 日期說明: 當(dāng)省略HH,、MI和SS對應(yīng)的輸入?yún)?shù)時,,Oracle使用0作為DEFAULT值。如果輸入的日期數(shù)據(jù)忽略時間部分,,Oracle會將時,、分、秒部分都置為0,,也就是說會取整到日,。 同樣,忽略了DD參數(shù),,Oracle會采用1作為日的默認(rèn)值,,也就是說會取整到月。 但是,,不要被這種“慣性”所迷惑,,如果忽略MM參數(shù),Oracle并不會取整到年,,取整到當(dāng)前月,。 注意: 1.在使用Oracle的to_date函數(shù)來做日期轉(zhuǎn)換時,可能會直覺地采用“yyyy-MM-dd HH:mm:ss”的格式作為格式進(jìn)行轉(zhuǎn)換,,但是在Oracle中會引起錯誤:“ORA 01810 格式代碼出現(xiàn)兩次”,。如:select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;原因是SQL中不區(qū)分大小寫,MM和mm被認(rèn)為是相同的格式代碼,,所以O(shè)racle的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 H |
|