PL/SQL 類型格式轉(zhuǎn)換
更新時間:2007年03月21日 00:00:00 作者:
TO_NUMBER(char[,'format_model']) 字符轉(zhuǎn)換到數(shù)字類型
TO_DATE(char[,'format_model']) 字符轉(zhuǎn)換到日期類型
格式說明符:要與前邊要轉(zhuǎn)換的字符串的格式要相同才能轉(zhuǎn)換(匹配問題:格式和位數(shù))。
TO_CHAR(date[,'format_model'[,nlsparams]])
第二個參數(shù)可以省略,不指定格式,按系統(tǒng)默認格式輸出。
區(qū)分大小寫。
使用FM(在格式控制符前添加)符號可以去掉空格或是首位的零。
如果指定了NLSPARAMS,則它控制返回字符串的月和日分量所使用的語言。格式為:
'NLS_DATA_LANGUAGE=language',language指需要的語言。
例:
select to_char(sysdate,'FMyyyy-mm-dd') from dual;
格式控制符的類型:
YYYY 四位的年
YEAR 年的拼寫
MM 2位數(shù)字的月
MONTH 月的全名
MON 月名的前三個字符
DY 星期名的前三個字符
DAY 星期名的全稱
DD 2位的天
時間格式控制符:
HH24:MI:SS AM
HH12:MI:SS PM
通過“”來實現(xiàn)加入特殊字符的格式控制符。
SELECT TO_CHAR(SYSDATE,'FMyyyy"年"mm"月"dd"日"') from dual;
DDSPTH
~~
DD是格式控制符。
TH是序數(shù)詞,將日期轉(zhuǎn)換成英文的序數(shù)詞拼寫。
SP是基數(shù)詞,將日期轉(zhuǎn)換成英文的基數(shù)詞拼寫。
TO_CHAR(NUM[,'format_model'[,nlsparams]])轉(zhuǎn)換數(shù)字
將NUMBER類型參數(shù)NUM轉(zhuǎn)換成VARCHAR2類型。如果指定FORMAT,它會控制整個轉(zhuǎn)換。
如果沒有指定FORMAT,那么結(jié)果字符串中將包含和NUM中有效位的個數(shù)相同的字符。NLSPARAMS用來指定小數(shù)點和千分符及貨幣符號。它的格式可為:'NLS_NUMERIC_CHARS=' ' dg ' 'NLS_CURRENCY= ' 'string' ' '
d和g分別代表小數(shù)點和千分符。STRING代表貨幣符號。
數(shù)字格式控制符:
9 代表一位數(shù)字(替換符。有,數(shù)字顯示;沒有。不什么都顯示。)
0 代表一位數(shù)字(有數(shù)字,顯示;沒有,強制顯示0。)
$ 美圓符號
L 本地貨幣
. 小數(shù)點
, 千分符
B 當整數(shù)部分為0時,將整數(shù)部分填充為空格。 例:B999
MI 返回帶有后繼符號而不是前導負號的負數(shù)值,正數(shù)值將帶有后繼的空格。999MI
S 返回一個前導符號或后繼符號,正數(shù)為+,負數(shù)為-。 S9999 或 9999S
PR 使用尖括號返回負數(shù)。正數(shù)將有前導或后繼空格。999PR
D 在指定位置返回一個小數(shù)點。兩側(cè)的9的個數(shù)指定了最大的位數(shù)。99D9
G 在指定位置返回千分符,G可以在FORMAT_model中出現(xiàn)多次。9G999G9
C 在指定位置返回ISO貨幣符號。C可以在FORMAT_model中出現(xiàn)多次。C99
L 在指定位置上返回本地貨幣符號。 L99
V 返回一個被乘以10的N次方的數(shù)值,這里N是V后邊9的個數(shù)。99V99
EEEE 使用科學記數(shù)法返回該數(shù)值。9.99EEEE
RM 使用大寫的羅馬數(shù)字表示返回該數(shù)值。 RM
rm 使用小寫的羅馬數(shù)字表示返回該數(shù)值。 rm
FM 返回不含前導和后繼空格的數(shù)值。 FM99.09
格式控制符位數(shù)一定要大于或等于NUMBER的位數(shù),不能小于。
TO_DATE(char[,'format_model']) 字符轉(zhuǎn)換到日期類型
格式說明符:要與前邊要轉(zhuǎn)換的字符串的格式要相同才能轉(zhuǎn)換(匹配問題:格式和位數(shù))。
TO_CHAR(date[,'format_model'[,nlsparams]])
第二個參數(shù)可以省略,不指定格式,按系統(tǒng)默認格式輸出。
區(qū)分大小寫。
使用FM(在格式控制符前添加)符號可以去掉空格或是首位的零。
如果指定了NLSPARAMS,則它控制返回字符串的月和日分量所使用的語言。格式為:
'NLS_DATA_LANGUAGE=language',language指需要的語言。
例:
select to_char(sysdate,'FMyyyy-mm-dd') from dual;
格式控制符的類型:
YYYY 四位的年
YEAR 年的拼寫
MM 2位數(shù)字的月
MONTH 月的全名
MON 月名的前三個字符
DY 星期名的前三個字符
DAY 星期名的全稱
DD 2位的天
時間格式控制符:
HH24:MI:SS AM
HH12:MI:SS PM
通過“”來實現(xiàn)加入特殊字符的格式控制符。
SELECT TO_CHAR(SYSDATE,'FMyyyy"年"mm"月"dd"日"') from dual;
DDSPTH
~~
DD是格式控制符。
TH是序數(shù)詞,將日期轉(zhuǎn)換成英文的序數(shù)詞拼寫。
SP是基數(shù)詞,將日期轉(zhuǎn)換成英文的基數(shù)詞拼寫。
TO_CHAR(NUM[,'format_model'[,nlsparams]])轉(zhuǎn)換數(shù)字
將NUMBER類型參數(shù)NUM轉(zhuǎn)換成VARCHAR2類型。如果指定FORMAT,它會控制整個轉(zhuǎn)換。
如果沒有指定FORMAT,那么結(jié)果字符串中將包含和NUM中有效位的個數(shù)相同的字符。NLSPARAMS用來指定小數(shù)點和千分符及貨幣符號。它的格式可為:'NLS_NUMERIC_CHARS=' ' dg ' 'NLS_CURRENCY= ' 'string' ' '
d和g分別代表小數(shù)點和千分符。STRING代表貨幣符號。
數(shù)字格式控制符:
9 代表一位數(shù)字(替換符。有,數(shù)字顯示;沒有。不什么都顯示。)
0 代表一位數(shù)字(有數(shù)字,顯示;沒有,強制顯示0。)
$ 美圓符號
L 本地貨幣
. 小數(shù)點
, 千分符
B 當整數(shù)部分為0時,將整數(shù)部分填充為空格。 例:B999
MI 返回帶有后繼符號而不是前導負號的負數(shù)值,正數(shù)值將帶有后繼的空格。999MI
S 返回一個前導符號或后繼符號,正數(shù)為+,負數(shù)為-。 S9999 或 9999S
PR 使用尖括號返回負數(shù)。正數(shù)將有前導或后繼空格。999PR
D 在指定位置返回一個小數(shù)點。兩側(cè)的9的個數(shù)指定了最大的位數(shù)。99D9
G 在指定位置返回千分符,G可以在FORMAT_model中出現(xiàn)多次。9G999G9
C 在指定位置返回ISO貨幣符號。C可以在FORMAT_model中出現(xiàn)多次。C99
L 在指定位置上返回本地貨幣符號。 L99
V 返回一個被乘以10的N次方的數(shù)值,這里N是V后邊9的個數(shù)。99V99
EEEE 使用科學記數(shù)法返回該數(shù)值。9.99EEEE
RM 使用大寫的羅馬數(shù)字表示返回該數(shù)值。 RM
rm 使用小寫的羅馬數(shù)字表示返回該數(shù)值。 rm
FM 返回不含前導和后繼空格的數(shù)值。 FM99.09
格式控制符位數(shù)一定要大于或等于NUMBER的位數(shù),不能小于。
相關(guān)文章
解決navicat 鏈接oracle時出現(xiàn)的各種問題
這篇文章主要介紹了解決navicat 鏈接oracle時出現(xiàn)的各種問題,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-08-08PL/SQL Developer連接64位的Oracle圖文教程
這篇文章主要為大家詳細介紹了PL/SQL Developer連接64位的Oracle圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03查看oracle數(shù)據(jù)庫的編碼及修改編碼格式的方法
本節(jié)主要介紹了如何查看oracle數(shù)據(jù)庫的編碼及修改編碼格式,需要的朋友可以參考下2014-07-07Oracle 遍歷游標的四種方式匯總(for、fetch、while、BULK COLLECT)
這篇文章主要介紹了Oracle 遍歷游標的四種方式匯總(for、fetch、while、BULK COLLECT),幫助大家更好的理解和使用Oracle數(shù)據(jù)庫,感興趣的朋友可以了解下2020-10-10PLSQL?Developer13.0.4最新注冊碼和使用教程詳解
PL/SQL?Developer?13是一個集成開發(fā)環(huán)境,專門用于開發(fā)?Oracle?數(shù)據(jù)庫的存儲程序單元。這篇文章主要介紹了PLSQL?Developer13.0.4注冊和使用教程,需要的朋友可以參考下2021-12-12[Oracle] 如何使用觸發(fā)器實現(xiàn)IP限制用戶登錄
在Oracle里,不像MySQL那樣方便,可以直接在用戶上進行IP限制,Oracle要實現(xiàn)用戶級別的IP限制,可以使用觸發(fā)器來迂回實現(xiàn),以下就是示例,需要的朋友可以參考下2013-07-07Oracle?function函數(shù)返回結(jié)果集的3種方法
工作中常需要經(jīng)過一段復雜邏輯處理后,得出的一個結(jié)果集,所以這篇文章主要給大家介紹了關(guān)于Oracle?function函數(shù)返回結(jié)果集的3種方法,需要的朋友可以參考下2023-07-07