各位大哥好,小弟做一个东西,从 Excel 里面读数据到 SQLServer,然后要先处理,例如从Excel读到以下数据:字段A                字段b编报单位:           NULL
2006年科目           代码
本月支出数   100.00
10101               200.00
10102               2200.00
10103               3000.00
18000            NULL
NULL            NULL但是我只想要字段 A只有阿拉伯数字的并且字段b是数字型的(money),也就是想要得到:
10101               200.00
10102               2200.00
10103               3000.00请问各位大大,怎么实现?用 SQLServer2000

解决方案 »

  1.   

    select * from 表 where ISNUMERIC(字段b)=1
      

  2.   

    ISNUMERIC()
    确定表达式是否为一个有效的数字类型。
      

  3.   

    那个有Bug的-_-2e3
    或者
    2d3
    试试看就知道了
    或者下面这个也是' '
      

  4.   

    --执行以下语句
    set nocount on
    select isnumeric(' ')
    select isnumeric('2e3')
    select isnumeric('2d3')
    set nocount off
    /*结果集
                
    ----------- 
    1            
    ----------- 
    1            
    ----------- 
    1
    */LZ要保证那些字段里没有以上字符的话,可以用ISNUMERIC函数
      

  5.   

    楼上说的没错!
    ------
    declare @t table(number varchar(100))
    insert @t select '2e3'
    union all select '2d3'
    ---------
    select * from @t
    where isnumeric(number)=1
    --结果
    2e3
    2d3
      

  6.   

    搞定了,就是用 isnumeric,谢谢几位,已经揭帖了