4 回答
TA贡献1829条经验 获得超7个赞
To_number(varchar2 or char,’format model’)。第一个是要转换的字符串,后面的是下面的几种
9 代表一个数字
0 强迫0显示
$ 显示美元符号
L 强制显示一个当地的货币符号
. 显示一个小数点
, 显示一个千位分隔符号
TA贡献1873条经验 获得超9个赞
1. 将表中的某个字段从物理存储上的字符型转换为物理存储上的数字型,
没有快捷的直接的方法,只能重建字段或表
2. 可以在表上建立视图, 这是在大系统中很常用的方法
3. 一般直接查询时可以 select to_number(varchr_field) form tab 得到结果
4. 注意: 尝试将英文字符用to_number转换为数字都会提示出错.
TA贡献1829条经验 获得超9个赞
to_number的正确格式是:To_number( A.column , ’format’)。
其中 char代表一个数值字符串,format代表 A.column 的格式。
语句 select to_number(0.25,'9.00') a from dual;中的0.25正确写法是'0.25',带有单引号。
后边的格式'9.00'代表0.25的数值格式。9代表整数位数,0代表小数位数。
TA贡献1807条经验 获得超9个赞
这个肯定不能直接这样转换,可以使用如下的处理方式
to_number(REPLACE('10.20.30.40','.',''),'99999999')
其中REPLACE('10.20.30.40','.','')的作用是将10.20.30.40中的.去掉。
比如:
SELECT to_number(REPLACE('10.20.30.40','.',''),'99999999') FROM DUAL
输出结果为:10203040
添加回答
举报