判断字段内容是否数值
比如字段里面是 'L ',那么它就不是数值,如果是 '123.1 '那么为数值,现在我用cast(字段 as float)来判断,但是会提示错误,有没有内建的函数判断它是数值型的???
附错误:
将数据类型 varchar 转换为 float 时出错。
------解决方案--------------------isnumeric()
返回0不是數字,1是數字
------解决方案--------------------isnumeric函数判断
------解决方案--------------------IsNumeric
------解决方案--------------------用isnumeric()来判断,注意过滤空字符串以及 ". "等特殊字符。
------解决方案--------------------ISNUMERIC
決定運算式是否為有效的數值型別。
語法
ISNUMERIC ( expression )
引數
expression
是要驗算的運算式。
傳回型別
int
備註
當輸入運算式驗算為有效整數、浮點數字、money 或 decimal 型別時,ISNUMERIC 會傳回 1,否則會傳回 0。傳回值為 1 確保 expression 可被轉換成這些數值型別之一。
------解决方案--------------------我的回貼時間比樓主發貼時間還早?
------解决方案--------------------Select IsNumeric( 'L ') --0
Select IsNumeric( '12356 ') --1
------解决方案--------------------用ISNUMERIC 函数判断
case when ISNUMERIC(字段)=1 then '数字 ' else '字符 ' end
------解决方案--------------------這樓蓋得真快...
------解决方案--------------------echiynn(寶琲) ( ) 信誉:100 2007-07-16 16:27:35 得分: 0
我的回貼時間比樓主發貼時間還早?
---------
前面四個都是
------解决方案--------------------这么多人啊.
------解决方案--------------------select 数值=case when isnumeric(字段)=1 then 字段 end,
非数值=case when isnumeric(字段)=0 then 字段 end
from 表
------解决方案--------------------回复人:paoluo(一天到晚游泳的鱼) ( 四星(高级)) 信誉:100 2007-07-16 16:28:26 得分:0
?
echiynn(寶琲) ( ) 信誉:100 2007-07-16 16:27:35 得分: 0
我的回貼時間比樓主發貼時間還早?
---------
前面四個都是
---------
都应该去买彩票,或者散分.
------解决方案--------------------select * from table1 where isnumeric(field1)=1
------解决方案--------------------...
這時間怎麼搞的
------解决方案--------------------前面的每人给一分,其余的全部给我。
------解决方案--------------------给分
------解决方案--------------------isnumeric(数据)=0 --不是数字类型
isnumeric(数据)=1 --数字类型
------解决方案--------------------给分就是```具体看帮助```
------解决方案--------------------ISNUMERIC ( expression )