首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

查询出最大ID的记录进行累加的语句

2013-10-16 
求一个查询出最大ID的记录进行累加的语句一张表如下:姓名次数成绩张三180李四160王九190张三255张三366李

求一个查询出最大ID的记录进行累加的语句
一张表如下:
姓名    次数     成绩
张三     1        80
李四     1        60
王九     1        90
张三     2        55
张三     3        66
李四     2        45
王九     2        50
想实现每个人最大次数成绩的累加,就是张三的第三次66 + 李四的第二次45 + 王九的第二次50
谢谢
[解决办法]

;with f as
(
select * from tb t where not exists(select 1 from tb where 姓名=t.姓名 and 次数>t.次数)
)

select sum(成绩) from f

[解决办法]
select sum(成绩)
from tab a
where not exists (
select 1
from tab
where 姓名= a.姓名    
and 次数> a.次数
)


[解决办法]
;WITH a AS (
SELECT code+MAX(cishu)col1  FROM test
GROUP BY code
)SELECT SUM(chengji) FROM test WHERE code+cishu  IN (SELECT *FROM a)

[解决办法]
优化下:
SELECT SUM(成绩) FROM TB t WHERE not exists(select 1 from tb where 姓名=t.姓名 and 次数>t.次数)

热点排行