SQL Query没有给出准确的答案

时间:2014-11-21 16:53:57

标签: sql sql-server pivot-table

我有一张这样的表:

AID AName GID  GName PID PName   A  B

13  Ant  15     G15  13  904/M3  5  5
13  Ant  15     G15  16  905/M4  4  5
13  Ant  13     New  13  904/M3  6  2
13  Ant  13     New  16  905/M4  1  1
1   AUD  1      G1   13  904/M3  2  4
1   AUD  1      G1   16  905/M4  3  4
1   AUD  2      G2   13  904/M3  4  1
1   AUD  2      G2   16  905/M4  5  2
1   AUD  4      G4   13  904/M3  0  4
1   AUD  4      G4   16  905/M4  1  1
1   AUD  16     TGp  13  904/M3  2  5
1   AUD  16     TGp  16  905/M4  0  1

我正在尝试编写一个商店程序,这将帮助我给出这样的结果:

AName  P1A  P1B  P2A  P2B Total

 G15   5     5   4    5    19
 New   6     2   1    1    10
Ant    11    7   5    6    29   (Total values of G15 and New)
 G1    2     4   3    4    13
 G2    4     1   5    2    12
 G4    0     4   1    1    6
 TGP   2     5   0    1    8

AUD 10 14 9 8 41(G1,g2,G4和TGP的总值)

A列,B列中的值表示P1A和P1B。然后P2A和P2B代表col。来自具有相同AName的其他行的A和B值。 Ant和AUD仅提供总数。

我正在学习枢轴并尝试如果我能找到一些东西,但任何人都可以帮助我吗?

我尝试了这个SQL,但它不起作用,我是这里的新手

select AName, P1A, P1B, P2A, P2B
from
(
  select AID,AName,GID,GName,PID,PName,A,B
) as sourceTable
Pivot
(
  sum(A), sum(B) for AName in P1A, P1B, P2A, P2B
)
as PivotTable

0 个答案:

没有答案