SELECT TO_NUMBER('*') FROM DUAL
これは明らかに私に例外を与えます:
ORA-01722: 番号が無効です
それを「スキップ」して、0
またはNULL
代わりに取得する方法はありますか?
全体の問題:NVARCHAR2
数字を含むフィールドがあり、ほとんどではない ;-) (のように*
) で、列から最大の数字を選択する必要があります。
はい、私はそれがひどいデザインであることを知っていますが、これは私が今必要としているものです... :-S
更新日:
私自身のために、私はこの問題を解決しました
COALESCE(TO_NUMBER(REGEXP_SUBSTR(field, '^\d+')), 0)