create table #temp(a varchar(50))
insert #temp 
select '12双/个' union all
select '12.385千克/件'select left(a,len(a)-patindex('%[0-9]%',reverse(a))+1) from #temp
------------
12
12.385

解决方案 »

  1.   

    也可以用函数:
    create function f1(
    @var varchar(2000))
    returns varchar(2000)
    as
    begin
    declare @v int,@i int,@var2 varchar(2000)
    select @i=0,@v=len(@var)
    while(@i<=@v)
    begin
     if(ascii(@var2)>128) break
     select @var2=substring(@var,@i,@i+1)
     select @i=@i+1
    endreturn substring(@var,0,@i-1)
    end
      

  2.   

    函数不错,但一楼的够用了
    left(a,len(a)-patindex('%[0-9]%',reverse(a))+1)