select case when ( is_number(myTable.id) and (myTable.id >0) )
then 'Is a number greater than 0'
else 'it is not a number'
end as valuetype
from table myTable
There is no buil-it function for that in Oracle.
You would have to write your own, which could be something like this. If you are going to use it in SQL, it cannot return a boolean type:
function is_number(value in varchar2) return varchar2 is
nValue := to_number(value);
when value_error then
Register Hereor login if you are already a member