Check that value is number


Проверка на NUMBER

with ds as (select '17j' as f from dual union all
 select 'www12' as f from dual union all
 select '45' as f from dual union all
 select '+3' as f from dual union all
 select '12345' as f from dual union all
 select '-17.0 ' as f from dual union all
 select 'a23' as f from dual union all
 select ' +1.4' as f from dual)
SELECT trim(t.f),length(trim(translate(t.f,'+-.0123456789 ',' ')))
  FROM ds t
  WHERE length(trim(translate(t.f,'+-.0123456789 ',' '))) is null
  

SELECT TRANSLATE('123 455,23', '., ', '..') x1,
       TRANSLATE('-123 455.23', '., ', '.') x2
FROM dual