2

我有 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

不知道如何查询我的输出表..

有人可以帮忙吗

4

3 回答 3

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.

于 2013-07-22T07:44:07.063 回答
1
  Select A,B,AB, 
   SUM(H) as [SUM(H)],
    SUM(I) as [SUM(I)] 
  FROM Table1
     GROUP BY A, B, AB
于 2013-07-22T07:45:54.810 回答
0
SELECT MAX(A), MAX(B), AB, MAX(ID), SUM(H), SUM(I)
FROM Table1
GROUP BY AB

结果:

在此处输入图像描述

于 2013-07-22T07:42:32.463 回答