计算同一列中两个值的差异

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算同一列中两个值的差异相关的知识,希望对你有一定的参考价值。

当我将记录与相同的CATEGORY值组合时,我想找到差异(利润和损失)(例如,A将被组合并且C将被组合)。

答案

我想你想要条件聚合:

select category,
       sum(iif(side = "BUY", - quantity * price, quantity * price)) as net
from t
where side in ("BUY", "SELL")  -- may not be necessary
group by category;
另一答案
Select category, buy.amt-sell.amt ProfitorLoss
from
(SELECT sum(price*quantity) amt, Category
  FROM yourtable
 WHERE side = 'BUY'
GROUP BY Category) buy,
(SELECT sum(price*quantity) amt, Category
  FROM yourtable
 WHERE side = 'SELL'
GROUP BY Category) sell
where buy.category = sell.category

以上是关于计算同一列中两个值的差异的主要内容,如果未能解决你的问题,请参考以下文章

计算同一表中一列中日期之间的差异

在R中,寻找一种更有效的方法来计算列中的最大值与同一列中的所有值之间的差异[重复]

分区时的情况 - 组的同一列中具有两个特定值的组的返回值

用于计算同一列的值百分比的 SQL [关闭]

Excel - 合并具有共同值的行并将差异连接在一列中

如何计算两个角度测量值的差异? [重复]