SELECT a,
CONVERT(VARCHAR(8),GETDATE(),112)+
RIGHT('00'+CAST(ROW_NUMBER()OVER(ORDER BY GETDATE())AS VARCHAR(10)),3)sn
FROM AAA

解决方案 »

  1.   

    with T as (select a,rn=row_number() over (order by getdate()) from AAA)
    select a,sn=convert(varchar(10),getdate(),112)+replicate('0',3-len(rn))+convert(varchar,rn) from T
      

  2.   

    试试这个;create table AAA(a varchar(20))insert into AAA
    select 'erw' union all
    select 'dg' union all
    select 'sdg' union all
    select 'dsf' union all
    select 'gfds'
    goselect a,
           convert(varchar(8),getdate(),112)+
           right('00'+cast(ROW_NUMBER() over(order by @@spid) as varchar(10)),3) sn
    from AAA
    /*
    a sn
    erw 20150112001
    dg 20150112002
    sdg 20150112003
    dsf 20150112004
    gfds 20150112005
    */