Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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 是否有方法将当前行上方的行相加_Sql_Ms Access - Fatal编程技术网

Sql 是否有方法将当前行上方的行相加

Sql 是否有方法将当前行上方的行相加,sql,ms-access,Sql,Ms Access,我正试图将电子表格复制到数据库中,但我很难理解如何像在excel中那样只对当前行上方的行求和。例如,一列的公式如下所示: =SUM($B$9:$B9)/SUM($E$9:$E9) =SUM($B$9:$B10)/SUM($E$9:$E10) =SUM($B$9:$B11)/SUM($E$9:$E11) 。。。。等等 我需要在我的select qry中以某种方式复制这个公式,但不确定如何复制 SELECT Column1,Column2, SUM(Column1) + SUM(Column2)

我正试图将电子表格复制到数据库中,但我很难理解如何像在excel中那样只对当前行上方的行求和。例如,一列的公式如下所示:

=SUM($B$9:$B9)/SUM($E$9:$E9)
=SUM($B$9:$B10)/SUM($E$9:$E10)
=SUM($B$9:$B11)/SUM($E$9:$E11) 
。。。。等等

我需要在我的select qry中以某种方式复制这个公式,但不确定如何复制

SELECT Column1,Column2, SUM(Column1) + SUM(Column2) as Expr1
From tblTest
Group By Column1,Column2
有什么想法吗

    Col1    Col2    Col3  Total     Col1/Total      Trying to get this               
    7       0       3     10         70.00%          70.00%
    1       0       1                100.00%         72.73%
    2       0       4     6          33.33%          58.82%
    3       1       1     5          60.00%          59.09%

诀窍是您希望使用子查询来标识前面的所有行

SELECT  ID, 
        (
            SELECT SUM(ValueColumn)
            FROM    Test T2
            WHERE T2.ID <= T1.ID
        ) RunningSum
FROM
        Test T1
ORDER BY
        T1.ID

这会奏效的。如果您有一个大的数据集,您可能只需要选择数据并在应用程序中进行计算,因为在循环数据时,您将能够比此查询运行的效率更高地保持一个连续的总和。

您要查找的是一个连续的总和。尝试以下操作:。能否显示一个需要澄清的预期输出示例?在[sql][ms access]上运行total的搜索作为第一个结果出现。例如,假设列1的值为1-4行,则列2的值为1-4行。然后在第3列中,对于每一行1-4,它将在其上面添加每一行,因此第2行第3列将第1列和第2列相加。这是我的qry,我在select语句附近遇到错误?选择ID,DateColumn,inclution,BrokenGlass,OtherReasons,sumplution+SUMBrokenGlass+SUMOtherReasons作为总计,sumplution/Total作为Expr1,从tblTest T2中选择sumplution,其中T2.ID@user1342164我想您需要选择ID,DateColumn,inclution,BrokenGlass,OtherReasons,SumInclution+SUMBrokenGlass+SumOther原因为总计,SumInclution/总计为Expr1,从tblTest T2中选择SumInclution,其中T2.ID