SQL:从长格式转换为宽格式并获取总和

时间:2017-07-28 20:58:02

标签: sql sql-server aggregate transpose

在SQL(AGINITY,Amazon Redshift)中,我想按列COL1,COL2和COL3进行分组。

然后我想转换COL5,以便从COL4获得总和。

我认为这与从长格式转换为宽格式有关。我知道如何在R中执行此操作但不在SQL中执行此操作。顺便说一下,这些值不仅仅是A和B.还有大约10个,因为这只是更多行的子集。

我有一个数据集如下:

  COL1   COL2       COL3   COL4    COL5
 alpha   beta      gamma     15       A
 alpha   beta      gamma     20       A
 alpha   beta    epsilon     30       A
 zeta    beta      gamma     18       B
 zeta   delta      gamma     13       B

我想将其更改为:

  COL1   COL2       COL3      A     B     C    D  .... 
 alpha   beta      gamma     35     0   ...  ...  ....
 alpha   beta    epsilon     30     0   ...  ...  ....
 zeta    beta      gamma      0    18   ...  ...  ....
 zeta   delta      gamma      0    13   ...  ...  ....

谢谢!

0 个答案:

没有答案