我有TableInput
A B AB ID H I
1 1 1-1 3 1 2.2 //CASE1
1 1 1-1 3 2 3.4 //CASE1
1 4 1-4 3 1 2.2
1 4 1-4 3 4 4.2
1 4 1-4 3 4 3.2
1 5 1-5 3 4 1.2
1 5 1-5 3 4 3.2
1 6 1-6 3 4 5.2
这里考虑CASE1,其中AB列的值为1-1,在其他行中找到相同的对1-1,并且必须在H中添加列值。
因此我的结果表必须像..
A B AB SUM(H) SUM(I)
1 1 1-1 3 5.6
1 4 1-4 9 9.6
1 5 1-5 8 2.4
1 6 1-6 4 5.2
没有想到如何查询我的输出表..
任何人都可以帮忙
答案 0 :(得分:3)
这称为GROUP BY
:
SELECT A, B, AB,
SUM(H) AS SumH,
SUM(I) AS SumI
FROM dbo.TableName
GROUP BY A, B, AB
您必须对要选择的不属于GROUP BY
的列应用aggregate functions。
答案 1 :(得分:1)
Select A,B,AB,
SUM(H) as [SUM(H)],
SUM(I) as [SUM(I)]
FROM Table1
GROUP BY A, B, AB
答案 2 :(得分:0)
SELECT MAX(A), MAX(B), AB, MAX(ID), SUM(H), SUM(I)
FROM Table1
GROUP BY AB
<强>结果:强>