Sqlserver判断字符串是否是数字
一、Sqlserver有个函数ISNUMERIC(expression)
函数:
当expression为数字时,返回1,否则返回0
示例:
select ISNUMERIC('0') --结果为1
select ISNUMERIC('a') --结果为0
select ISNUMERIC('1d1') --结果为1
注意:当含有美元符、加减号、逗号等符号时,或者D、E的前后均出现数字时,也会返回1
二、通配符(2005及以上)
函数:
SELECT PATINDEX('%[^0-9|.|-|+]%','1.0')----返回0-则为纯数字(支持正负数,小数点)
SELECT PATINDEX('%[^0-9]%','1')----返回0-则为纯整数(支持正负数,小数点)