Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当值不相同时,如何在SQL中获取Running total?_Sql_Sql Server_Excel_Sql Server 2008 - Fatal编程技术网

当值不相同时,如何在SQL中获取Running total?

当值不相同时,如何在SQL中获取Running total?,sql,sql-server,excel,sql-server-2008,Sql,Sql Server,Excel,Sql Server 2008,我正在尝试在Excel数据透视表中以“running total in”的形式获取一周的跑步总数,如Show 我尝试了下面的查询 select A.*, (SELECT SUM(b.value) FROM Tbl_Running_Total_Test B WHERE B.Fweek <= A.Fweek AND A.level1=B.level1 AND A.

我正在尝试在Excel数据透视表中以“running total in”的形式获取一周的跑步总数,如Show

我尝试了下面的查询

select A.*,
(SELECT SUM(b.value)
            FROM Tbl_Running_Total_Test B
            WHERE   B.Fweek <= A.Fweek
                    AND A.level1=B.level1
                    AND A.level2=B.level2
                    AND A.level3=B.level3
                    AND A.level4=B.level4
            )
 from Tbl_Running_Total_Test A 
下面是一个SQL小提琴:


如果我使用上面的查询,我不会得到预期的结果

您的level3和level4有额外的字符,因此无法相加:

(4,'1QAB','2XMN','3YOPq','4ZGHi',25),
(4,'1QAc','2XMo','3YOqr','4ZGij',74),
(4,'1QAd','2XMp','3YOrs','4ZGjk',86),
(4,'1QAe','2XMq','3YOst','4ZGkl',97);
其他的是这样的:

(3,'1QAB','2XMN','3YOP','4ZGH',40),
(3,'1QAc','2XMo','3YOq','4ZGi',60),
(3,'1QAd','2XMp','3YOr','4ZGj',80),
(3,'1QAe','2XMq','3YOs','4ZGk',120),

同意,在查看Level 1或Level 1的值时,是否仍能获得所需的结果Level2@Punith那要看你的要求了。去掉最后的角色,与等级完全不匹配。。。