怎样在sql里面判断一个字符串是否可以转换为数字
^_^   
 谢谢大家
------解决方案--------------------ISNUMERIC()
------解决方案--------------------ISNUMERIC    
 当输入表达式得数为一个有效的整数、浮点数、money   或   decimal   类型,那么   ISNUMERIC   返回   1;否则返回   0。返回值为   1   确保可以将   expression   转换为上述数字类型中的一种。
------解决方案--------------------ISNUMERIC 
 确定表达式是否为一个有效的数字类型。   
 语法 
 ISNUMERIC ( expression )   
 参数 
 expression   
 要计算的表达式。   
 返回类型 
 int   
 注释 
 当输入表达式得数为一个有效的整数、浮点数、money 或 decimal 类型,那么 ISNUMERIC 返回 1;否则返回 0。返回值为 1 确保可以将 expression 转换为上述数字类型中的一种。     
 select ISNUMERIC(12245.2) 
 select ISNUMERIC( '啊啊 ')   
 ----- 
 1 
 0 
------解决方案--------------------declare @t table(name varchar(100)) 
 insert @t(name) 
 select  '123 ' 
 union all  
 select  '123.45 '     
 select * from @t where name not like  '%[^1-9]% '
------解决方案--------------------可以使用 ISNUMERIC() 函数,但是需要过滤一些特殊的字符,比如 '$ '和 '. ':   
 select ISNUMERIC( '$ ') 
 union all 
 select ISNUMERIC( '. ') 
------解决方案--------------------declare @t table(name varchar(100)) 
 insert @t(name) 
 select  '123 ' 
 union all  
 select  '123.45 '     
 select * from @t where  isnumeric(name)=1 
------解决方案--------------------ISNUMERIC 
 确定表达式是否为一个有效的数字类型。   
 语法 
 ISNUMERIC ( expression )   
 参数 
 expression   
 要计算的表达式。   
 返回类型 
 int   
 注释 
 当输入表达式得数为一个有效的整数、浮点数、money 或 decimal 类型,那么 ISNUMERIC 返回 1;否则返回 0。返回值为 1 确保可以将 expression 转换为上述数字类型中的一种。   
------解决方案--------------------declare @a int 
 declare @b varchar(10) 
 declare @c varchar(10)   
 set @a=1234 
 set @b= '1234 ' 
 set @c= '1234aa ' 
 select ISNUMERIC(@a) 
 select ISNUMERIC(@b) 
 select ISNUMERIC(@c) 
 ----- 
 1 
 1 
 0