在 SQL Server (2000/2005/2008) 中确定字段值是否为整数的最佳方法是什么?
IsNumeric 对于多种不太可能转换为整数的格式返回 true。示例包括“15,000”和“15.1”。
您可以使用类似的语句,但这似乎只适用于具有预定位数的字段......
select * where zipcode like '[0-9][0-9][0-9][0-9][0-9]'
我可以编写一个用户定义的函数,尝试在 try/catch 块中将 varchar 参数转换为 int,但我正在与社区核实,看看是否有人遇到过任何简洁的方法来实现这一目标 - 最好是可以的方法可以在 SQL 语句的 where 子句中使用,而无需创建其他对象。
迟到处理负数
ISNUMERIC(zipcode + '.0e0') --integer
ISNUMERIC(zipcode + 'e0') --decimal
更多请参见this http://www.tek-tips.com/faqs.cfm?fid=6423
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)