没有。如果是在pl/sql ,使用to_char() ,非法的可以触发exception
解决方案 »
- oracle9i冷备份的数据能导到10G上吗
- 编写一个存储过程,要求返回参数至少有一个是结果集
- 求一条sql语句,能统计时间差!
- 菜鸟求教查询:n-m行的查询
- msvc++6开发CS架构 : 服务器端接收请求报文后,如何最大效率地进行oracle数据库中操作,例如insert,select,update等? oci?
- ORA-01401: inserted value too large for column請求幫助
- 求一条sql语句
- 如何在 developer 9i中使用编辑器?
- 简单问题。关于游标的问题。来着有分,帮着up同样有分。
- 请教关于powerdesigner中sequence页布局变混乱后如何还原?非人为原因去变更的,不清楚为什么会变化。
- oracle存储过程为何不能执行?
- 急,oar817,log_archive_start=true方式运行,log_archive_dest的磁盘满了,我该怎么做?
ucase(fieldname)=lcase(fieldname)
这样就能得到是数字了,
如果不等就说明里面不仅仅有数字
就不能转换
不行就用ascii码
SELECT TO_NUMBER(decode(decode(lower(N4),upper(N4),1,0),1,N4,0)) FROM TABLE
其中N4是我的字段名,哪位大侠帮写一个,十分感谢,比较急!!
=======================================================================
SQL> SELECT TO_NUMBER(decode(decode(lower(sal),upper(sal),1,0),1,sal,0)) FROM my
emp;TO_NUMBER(DECODE(DECODE(LOWER(SAL),UPPER(SAL),1,0),1,SAL,0))
------------------------------------------------------------
1
2
3
4
5
6
4
5
6
11
11TO_NUMBER(DECODE(DECODE(LOWER(SAL),UPPER(SAL),1,0),1,SAL,0))
------------------------------------------------------------
0
0
0已选择14行。已用时间: 00: 00: 00.00
SQL> select sal from myemp;SAL
----------
1
2
3
4
5
6
4
5
6
11
11SAL
----------
a6
6b
a6已选择14行。已用时间: 00: 00: 00.00
=======================================================================
同时非常感谢楼上做的测试!!
SELECT TO_NUMBER(decode(decode(lower(nvl(sal,0)),upper(nvl(sal,0)),1,0),1,nvl(sal,0),0))
FROM myemp;
刚刚写了一个函数,这样就省事多了,结帐了
create or replace function PARSE_NUMBER
(VAR_VALUE IN VARCHAR)
return NUMBER is
Result NUMBER;
begin
Result := TO_NUMBER(VAR_VALUE);
return Result;
EXCEPTION WHEN others THEN
begin
return 0;
end;
end PARSE_NUMBER;