数据库BB,数据小AAA
AAA
1170100001107101
1170100001107102
1170100001107103
1170100001107104
更新成:
AAA
1170100001107201
1170100001107202
1170100001107203
1170100001107204
帮忙!给分!

解决方案 »

  1.   

    update 表 set AAA=replace('1170100001107101','1170100001107102')
      

  2.   

    update 表 set AAA=100+AAA
    你试试看
      

  3.   

    create table bb(aaa varchar(20))
    insert into bb values('1170100001107101')
    insert into bb values('1170100001107102')
    insert into bb values('1170100001107103')
    insert into bb values('1170100001107104')
    goselect left(aaa,13) + '2' + right(aaa,2) aaa from bb
    drop table bb/*
    aaa                       
    ------------------------- 
    1170100001107201
    1170100001107202
    1170100001107203
    1170100001107204(所影响的行数为 4 行)
    */
      

  4.   

    或create table bb(aaa varchar(20))
    insert into bb values('1170100001107101')
    insert into bb values('1170100001107102')
    insert into bb values('1170100001107103')
    insert into bb values('1170100001107104')
    goselect left(aaa,13) + cast(cast(substring(aaa,14,1) as int) + 1 as varchar) + right(aaa,2) aaa from bb
    drop table bb/*
    aaa                       
    ------------------------- 
    1170100001107201
    1170100001107202
    1170100001107203
    1170100001107204(所影响的行数为 4 行)
    */
      

  5.   

    update tablename set aaa=left(aaa,13) + '2'+ right(aaa,2)
      

  6.   

    create table #(AAA nvarchar(20))
    insert into #
    select '1170100001107101' union all
    select '1170100001107102' union all
    select '1170100001107103' union all
    select 'A170100001107104'
    drop table #
    select left(AAA,len(AAA) - 3),right(AAA,3) + 100 
    from #
    --如果需要判断是否可以转换为有效数字用这个
    select AAA = 
      case when isnumeric(AAA) = 1 then rtrim(left(AAA,len(AAA) - 3)) + rtrim(right(AAA,3) + 100)
      else AAA end
    from #
    --反之,用下边的
    select AAA =  rtrim(left(AAA,len(AAA) - 3)) + rtrim(right(AAA,3) + 100)
    from #/*结果
    1170100001107201
    1170100001107202
    1170100001107203
    A170100001107204
    */
      

  7.   

    update tb set AAA=LEFT(AAA,13)+'2'+RIGHT(AAA,2)
      

  8.   

    wubianhai001() 
    希望楼主问问题时说清楚些
    这样别人回答起问题来,快而准你这个bb又是从哪来的...
    就跟上一帖一样,突然又冒出来一个"字段里面有含有字符的,并不全是数字"
      

  9.   

    呵呵 好的 我说得清楚点!bb是数据库表,AAA是bb数据库表里的字段!这次清楚点了吗?:)
      

  10.   

    simonhehe(收购猩猩) 
    他帮你定就够了...呵呵