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 server 2005 正确关联sql查询_Sql Server 2005 - Fatal编程技术网

Sql server 2005 正确关联sql查询

Sql server 2005 正确关联sql查询,sql-server-2005,Sql Server 2005,我需要一个以上述格式提供数据表的查询,在此查询中,sum列的值取决于salary列如果您的表中有主键,您可以使用以下内容: Salary Sum 10 10 20 30 10 40 70 110 DECLARE@tbl表(ID INT,Salary INT) 插入@tbl 价值观 (1,10), (2,20), (3,10), (4,70) 挑选 tbl.工资, 金额(tbl2.工资)为[金额] 从…起 @tbl作为tbl 以tbl2的形式加入

我需要一个以上述格式提供数据表的查询,在此查询中,sum列的值取决于salary列

如果您的表中有主键,您可以使用以下内容:

Salary  Sum
10       10
20       30
10       40
70       110
DECLARE@tbl表(ID INT,Salary INT)
插入@tbl
价值观
(1,10),
(2,20),
(3,10),
(4,70)
挑选
tbl.工资,
金额(tbl2.工资)为[金额]
从…起
@tbl作为tbl
以tbl2的形式加入@tbl

(TBL2.ID是的,你是完全正确的,抱歉在发布这个问题的时候,我不知道这个术语运行完全没有问题。但是我没有一个很好的答案,虽然你:这是复杂的。我会考虑用你所用的其他语言计算它。否则,这里有一些阅读给你:)
DECLARE @tbl TABLE(ID INT,Salary INT)
INSERT INTO @tbl
VALUES
    (1,10),
    (2,20),
    (3,10),
    (4,70)

SELECT
    tbl.Salary,
    SUM(tbl2.Salary) AS [Sum]
FROM
    @tbl AS tbl
    JOIN @tbl AS tbl2
        ON (tbl2.ID <= tbl.ID)
GROUP BY 
    tbl.ID,
    tbl.Salary
ORDER BY 
    tbl.ID,
    tbl.Salary