Sybase 检查值是否为数字

Ray*_*Ray 1 sybase stored-procedures isnumeric

如何检查该值是否为数字?我尝试的是数字,但它返回一个错误,指出该函数未找到。

例子:

select *isnumeric*("abc") // returns 0 or false
select *isnumeric*("123") // returns 1 or true
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 5

一个合理的方法是寻找非数字:

select (case when str like '%[^0-9]%' then 0 else 1 end)
Run Code Online (Sandbox Code Playgroud)

这会查找数字字符串。如果需要的话,您可以扩展它以支持负号、小数点和指数表示。