SELECT TO_NUMBER('*') FROM DUAL
这显然给了我一个例外:
ORA-01722: 无效号码
有没有办法“跳过”它并获取0
或NULL
代替?
整个问题:我有NVARCHAR2
字段,其中包含数字而不是几乎 ;-) (如*
),我需要从列中选择最大的数字。
是的,我知道这是一个糟糕的设计,但这就是我现在需要的...... :-S
更新:
对于我自己,我已经解决了这个问题
COALESCE(TO_NUMBER(REGEXP_SUBSTR(field, '^\d+')), 0)