【发布时间】:2020-12-20 11:50:38
【问题描述】:
这里是 SQL 新手。
有一堆被购买或出售的物品。
我想按商品名称分组并获得购买和销售的总和。 我也想计算物品的库存。
我尝试了一个子查询:
SELECT NAME,
(
SELECT SUM(quantity)
FROM transactions
WHERE `type` = "Buy") AS "purchases",
(
SELECT SUM(quantity)
FROM transactions
WHERE `type` = "Sell") AS "sales"
FROM transactions
GROUP BY NAME
导致错误值:
之后我尝试了 CASE-Statements
SELECT NAME,
SUM(CASE WHEN `type` = "Buy" THEN quantity END) AS "purchases",
SUM(CASE WHEN `type` = "Sell" THEN quantity END) AS "sales"
FROM transactions
GROUP BY name
哪个有效:
问题一:有没有更好的方法来达到这个结果?
问题2:如何计算商品的库存?
purchases - sales AS "Stock" 之类的东西似乎不起作用。
非常感谢
【问题讨论】:
标签: mysql sql sum subquery pivot