oracle怎么將數(shù)據(jù)轉為數(shù)字類型

oracle中,可以使用to_number()函數(shù)來將數(shù)據(jù)轉為數(shù)字類型,該函數(shù)可以將字符串轉換為數(shù)值型的格式,語法“to_number(varchar2 or char,’格式’)”。

oracle怎么將數(shù)據(jù)轉為數(shù)字類型

本教程操作環(huán)境:Windows7系統(tǒng)、Oracle 11g版、Dell G3電腦。

oracle中,可以使用to_number()函數(shù)來將數(shù)據(jù)轉為數(shù)字類型。

to_number()函數(shù)是oracle中常用的類型轉換函數(shù)之一,是將一些處理過的按一定格式編排過的字符串變回數(shù)值型的格式。

1、to_number()函數(shù)可以將char或varchar2類型的string轉換為一個number類型的數(shù)值;

2、需要注意的是,被轉換的字符串必須符合數(shù)值類型格式,如果被轉換的字符串不符合數(shù)值型格式,Oracle將拋出錯誤提示;

3、to_number和to_char恰好是兩個相反的函數(shù);?

語法:

to_number(varchar2?or?char,'格式')

To_number函數(shù)中也有很多預定義的固定格式:

格式值 含義
9 代表一個數(shù)字
0 強迫0顯示
$ 顯示美元符號
L 強制顯示一個當?shù)氐呢泿欧?/td>
. 顯示一個小數(shù)點
, 顯示一個千位分隔符號

一些例子

select?to_number('000012134')?from?dual;?? select?to_number('88877')?from?dual;
SQL>?select?to_number(’RMB234234.4350′,’L999999.0000′)?from?dual; ????TO_NUMBER(’RMB234234.4350′,’L999999.0000′) ????—————————————— ????234234.435
SQL>?select?to_number(’$123,233,455,623.3400′,’$999,999,999,999.0000′)?from?dual; ????TO_NUMBER(’$123,233,455,623.3400′,’$999,999,999,999.0000′) ????———————————————————- ????1.2323E+11

如果數(shù)字在格式范圍內(nèi)的話,就是正確的,否則就是錯誤的;如:

select?to_number('$12345.678',?'$999999.99')?from?dual;?? select?to_number('$12345.678',?'$999999.999')?from?dual;

to_number()函數(shù)可以用來實現(xiàn)進制轉換;16進制轉換為10進制:

select?to_number('19f','xxx')?from?dual;?? select?to_number('f','xx')?from?dual;

推薦教程:《Oracle教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊14 分享