如何编写select语句以仅从sql Server中的char列中选择整数(仅此而已).例如,我的表名是POWDER,有2列,ID(int)和Name(char(5))
ID Name -- ---------- 1 AXF22 2 HYWWW 3 24680 4 8YUH8 5 96635
我希望能够只选择那些包含整数的行而不是更多(本例中为ID 3和ID 5)
如果我尝试:
SELECT * FROM POWDER WHERE Name LIKE '[0-9]%'
……它将返回:
ID Name -- ---------- 3 24680 4 8YUH8 5 96635
任何想法如何获得只包含整数的行?
解决方法
SELECT * FROM POWDER WHERE IsNumeric(Name) = 1
对于其他一些在数字中有效的字符,IsNumeric返回1,例如和 – 和$,但对于您的输入,您应该没问题.