我有一个数据集,我需要对其进行一些聚合才能显示。
Date, Rank, Vote
07/20/2013, 8, -1
07/21/2013, 8, -1
07/23/2013, 7, -1
07/24/2013, 6, 1
07/25/2013, 7, 1
07/26/2013, 7, -1
07/27/2013, 8, 1
07/28/2013, 8, 1
07/29/2013, 8, -1
我想按连续排名进行分组,对投票求和,然后选择分组日期中的第一个。上述数据集将返回:
07/20/2013,8,-2
07/23/2013,7,-1
07/24/2013,6,1
07/25/2013,7,0
07/27/2013,8,1
我的第一个想法是按日期和排名分组,但这不会合并多天。事后我可以通过循环数据来做到这一点,或者我可以在存储过程中使用游标,但我很好奇是否有更简单的 SQL 查询方法。