有没有人知道如何对一组的总值进行求和和减去?我有1,2和3组金额。我想取第1组的总和,并在主行分组之外连续减去第2组的总和。我已经使用了IF语句,并且看了一遍,并测试了我能想到的一切。任何人都可以解释如何做到这一点?
数据集1 字段:“组”,“金额”
注意:SQL不是一个选项,因为我在顶部也有一个列分组。
答案 0 :(得分:0)
我不知道你在主行分组之外的意思是什么。"你能提供一个例子吗?
根据您的描述(少于我刚才提到的一个对冲因素),看起来您需要做的就是:
select <whatever>, Sum( Field1 ) as Group1, Sum( Field2 ) as Group2,
Sum( Field1 ) - Sum( Field2 ) as FinalAmount
from ...
编辑:所以你有一个名为&#34; Group&#34;并且您希望由该列的值指定的每个组的总和。这很容易做到。
select Group,
Sum( case Group when 1 then Amount else 0 end ) as Group1,
Sum( case Group when 2 then Amount else 0 end ) as Group2,
Sum( case Group when 3 then Amount else 0 end ) as Group3
from ...
如果你想在小组总数之间进行进一步处理,我会建议CTE或派生/内联视图。