to_number()函數是oracle中常用的類型轉換函數之一,是將一些處理過的按一定格式編排過的字符串變回數值型的格式。
1、to_number()函數可以將char或varchar2類型的string轉換為一個number類型的數值;
2、需要注意的是,被轉換的字符串必須符合數值類型格式,如果被轉換的字符串不符合數值型格式,Oracle將拋出錯誤提示;
3、to_number和to_char恰好是兩個相反的函數;
eg:
(1)to_number(varchar2 or char,'格式')
select to_number('000012134') from dual; select to_number('88877') from dual;
(2)如果數字在格式范圍內的話,就是正確的,否則就是錯誤的;如:
select to_number('$12345.678', '$999999.99') from dual; select to_number('$12345.678', '$999999.999') from dual;
(3)可以用來實現進制轉換;16進制轉換為10進制:
select to_number('19f','xxx') from dual; select to_number('f','xx') from dual;