Number   time                     count       create_by
1        2012-8-14 20:20:20       3           tom
1        2012-8-14 20:19:20       3           jerry
1        2012-8-13 20:19:20       3           jerry
2        2012-8-11 20:19:20       1           Ketty
2        2012-8-10 20:19:20       1           nick求编号的累积数量,并且显示最新的Create_by和日期1       2012-8-14 20:20:20        9            tom
2       2012-8-11 20:19:20        2            Ketty

解决方案 »

  1.   


    --try
    select t.Number,max(t.time) ,sum(t.count),t1.[create_by]
    from 你的表 t,(select row_number() over(partition by Number order by Number,[time] desc) rn,
    Number,[time],[count],[create_by]
    from 你的表) t1
    where t.Number=t1.Number and t1.rn=1
    group by t.Number;
      

  2.   

    with temp as
    (
      select number, max(time) as time, sum(count) as sumcount
      from table
      group by number
    )
    select temp.number, temp.time, temp.sumcount, table.create_by
    from temp
    inner join table on table.number = temp.number
    and table.time= temp.time
      

  3.   


    select a.Number,max(a.time) ,sum(a.count),b.[create_by]
    from 
    tab a,
    (select rank() over(partition by Number order by Number,[time] desc) RankID,Number,[time],[count],[create_by] from tab) b
    where a.Number=b.Number and b.RankID=1
    group by a.Number;