Oracle中to_number()函数的用法

时间:2023-03-08 23:17:54
Oracle中to_number()函数的用法

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('') from dual;
select to_number('') 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;