将查询结果分组为1行
问题描述:
Group | Count 1 | Count 2 | Count 3
-----------------------------------
Grp 1 | (null) | 54 | (null)
Grp 1 | (null) | (null) | 52
Grp 1 | 55 | (null) | (null)
Grp 2 | 62 | (null) | (null)
Grp 2 | (null) | 56 | (null)
Grp 2 | (null) | (null) | 32
这就是我的查询结果目前的样子,我如何对它们进行分组,使每个“Grp”只有一行像这样。将查询结果分组为1行
Group | Count 1 | Count 2 | Count 3
-----------------------------------
Grp 1 | 55 | 54 | 52
Grp 2 | 62 | 56 | 32
答
使用GROUP BY
与聚合功能,如SUM
(或MAX
,因为你需要):
select
"Group"
sum(Count_1) count_1,
sum(Count_2) count_2,
sum(Count_3) count_3
from your_table
group by "Group";
此外,尽量不要使用保留关键字如GROUP
等作为表或列标识符。
+0
谢谢,我稍后会接受答案,因为我现在无法做到。 – crimson589
使用'MAX([Count 1]),MAX([Count 2]),MAX([Count 3])' – cha