Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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 2008 重新组合公共行_Sql Server 2008_Group By - Fatal编程技术网

Sql server 2008 重新组合公共行

Sql server 2008 重新组合公共行,sql-server-2008,group-by,Sql Server 2008,Group By,我有一个查询,每次都会给我4个重复的,因为一个字段不同 假设我有这张桌子 ----------------- | A | B | C | D | ----------------- | 1 |Blue| 2 | 0 | | 1 |Blue| 2 | 1 | | 1 |Blue| 2 | 2 | | 1 |Blue| 2 | 3 | | 2 |Red | 1 | 0 | | 2 |Red | 1 | 1 | | 2 |Red | 1 | 2 | | 2 |Red | 1 | 3 | ------

我有一个查询,每次都会给我4个重复的,因为一个字段不同

假设我有这张桌子

-----------------
| A |  B | C | D |
-----------------
| 1 |Blue| 2 | 0 |
| 1 |Blue| 2 | 1 |
| 1 |Blue| 2 | 2 |
| 1 |Blue| 2 | 3 |
| 2 |Red | 1 | 0 |
| 2 |Red | 1 | 1 |
| 2 |Red | 1 | 2 |
| 2 |Red | 1 | 3 |
------------------
我想做的是把它们重新组合成一个。对于
D
列,应使用
SUM()
将其分组

问题是我不知道从哪里开始。是否有关键字将它们分组为一个?我会使用
Distinct
,但由于1个不匹配,我仍然会使用4个

最终的REUSELT集合应该是

------------------
| A |  B | C | D |
------------------
| 1 |Blue| 2 | 6 |
| 2 |Red | 1 | 6 |
------------------
有可能吗

当然有可能——这应该可以做到:

 select A, B, C, sum(D) as D
 from TABLE
 group by A, B, C