当前位置: 代码迷 >> Sql Server >> SQL再次请问: 把时间相同的,连续的user的score相加
  详细解决方案

SQL再次请问: 把时间相同的,连续的user的score相加

热度:102   发布时间:2016-04-24 09:18:14.0
SQL再次请教: 把时间相同的,连续的user的score相加.
之前问过的问题:

table1的表如下:
time score user
08:00:00 50 zhao
08:00:00 60 zhao
08:00:00 50 null
08:00:50 20 qian
08:01:00 50 sun
08:01:00 50 sun
08:02:00 10 li
08:02:01 80 li
08:02:01 50 li

把时间相同的,连续的user的score相加,得出以下结果:
time total-score user
08:00:00 110 zhao
08:00:50 20 qian
08:01:00 100 sun
08:02:00 10 li
08:02:01 130 li

答案是如下,很好。
Select User,Time,Sum(Score) As TotalScore
From Table1
Group By User,Time



现在需求变了,假设这个表的内容如下(新增加2列)
TIME;SCORE;USER;ACTION1;ACTION2
08:00:00;50;zhao;123;abc
08:00:00;60;zhao;12345;bce
08:00:00;50;null;NULL;123;
08:00:50;20;qian;NULL;NULL
08:01:00;50;sun;xxx;yyy
08:01:00;50;sun;NULL;yyy
08:02:00;10;li;YI;111
08:02:01;80;li;ER;NULL
08:02:01;50;li;SAN;222

新的需求是把时间相同的,连续的user的score相加,并且返回首行的Action1和Action2值,得出以下结果
TIME;SCORE;USER;ACTION1;ACTION2
08:00:00;110;zhao;123;abc
08:00:50;20;qian;NULL;NULL
08:01:00;100;sun;xxx;yyy
08:02:00;10;li;YI;111
08:02:01;130;li;ER;NULL
------解决思路----------------------
自然是有测试过了,和你的情况有什么出入,要说清楚,一句好像有问题,没人会明白你在说什么的。
  相关解决方案