如何从单个 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;
这是我的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;