Tag: ora 01722

“安全”TO_NUMBER()

SELECT TO_NUMBER('*') FROM DUAL 这显然给了我一个例外: ORA-01722:无效的号码 有没有办法“跳过”,并得到0或NULL呢? 整个问题:我有NVARCHAR2字段,其中包含数字,而不是几乎* )(如* ),我需要从列中select最大的数字。 是的,我知道这是一个可怕的devise,但这是我现在需要的…:-S UPD : 对于我自己,我已经解决了这个问题 COALESCE(TO_NUMBER(REGEXP_SUBSTR(field, '^\d+')), 0)