我需要创建一个摘要报告。我有两张桌子,包括产品和订单。我想创建这个:
从两个表:
制品
命令
我尝试了这个问题:
SELECT round(SUM(price),2),0)
FROM products, orders
WHERE products.id_products = orders.id_products AND MONTH(orders.date) = 1 AND YEAR(orders.date) = '2019'
GROUP BY products.type
对于每个月,但是当给定月份中不存在产品类型时,我会遇到问题。
有人有任何解决方案来生成这样的报告吗?
使用条件聚合:
SELECT
p.type_product,
SUM(CASE WHEN YEAR(o.date) = 2019 AND MONTH(o.date) = 1 THEN o.price ELSE 0 END) January,
SUM(CASE WHEN YEAR(o.date) = 2019 AND MONTH(o.date) = 2 THEN o.price ELSE 0 END) February
FROM
products p
INNER JOIN orders o ON oid_product. = p.id_product
GROUP BY p.type_product