如何从单个 table 的 SQL 数据中获取利润损失?

How to get profit loss from SQL data from a single table?

这是我的table

item_name   expense   income    balance     
hammer         1        0        613.90       
cde            0        1        530.10
hammer         0        1        300.00

列 expense/income 表示该项目是盈利还是亏损。 如果费用为 1,则表示亏损,如果收入为 1,则表示已售出。

我希望以这样一种方式显示数据,即对于每个项目,我都可以看到我获得了多少利润或损失了多少。 例子

item_name     Loss     Profit   
hammer       613.90    300.00   
cde            0       530.10

这看起来像聚合:

select item_name,
       sum(case when expense = 1 then balance else 0 end) as loss,
       sum(case when income = 1 then balance else 0 end) as profit
from t
group by item_name;