gpt4 book ai didi

SQL按类别求和和按月/年分组

转载 作者:行者123 更新时间:2023-12-04 20:53:40 25 4
gpt4 key购买 nike

尝试汇总按类型制造并按月/年汇总的总产品。

三个表:

  • Order_Line:id, batch_date_stop, item_id
  • Order_Line_Detail:order_line_id、batched_qty、item_id
  • Mill_Item_Map:item_id,item_class

下面的脚本有效,但每个月为每个类别单独一行。我想要一行包含每种产品的总数。我错过了什么?

SELECT
YEAR(OL.batch_date_stop) as [Manf Year],
MONTH(OL.batch_date_stop) as [Manf Month],
SUM(case when MIM.item_class is not null then OLD.batched_qty else 0 end)/2000 AS Total,
SUM(case when MIM.item_class = 'CAKE' then OLD.batched_qty else 0 end)/2000 AS [Cake],
SUM(case when MIM.item_class = 'PELLET' then OLD.batched_qty end)/2000 AS [Pellet],
SUM(case when MIM.item_class = 'MINERAL' then OLD.batched_qty end)/2000 AS [Mineral],
SUM(case when MIM.item_class = 'MIX' then OLD.batched_qty end)/2000 AS [Mix],
SUM(case when MIM.item_class = 'GRAIN' then OLD.batched_qty end)/2000 AS [Grain]
FROM Order_Line OL
JOIN order_line_detail OLD ON OLD.order_line_id = OL.id
JOIN mill_item_map MIM ON MIM.item_id = OL.item_id
WHERE YEAR(OL.batch_date_stop) = 2016 and
OLD.sequence_number = 0
Group BY MIM.item_class, YEAR(OL.batch_date_stop), MONTH(OL.batch_date_stop)
ORDER BY YEAR(OL.batch_date_stop), MONTH(OL.batch_date_stop)

enter image description here

最佳答案

尝试在分组依据中仅使用年和月

Group BY  YEAR(OL.batch_date_stop), MONTH(OL.batch_date_stop)

关于SQL按类别求和和按月/年分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39214940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com