簡體   English   中英

按類別和按月/年分組的SQL總和

[英]SQL Sum by Category and group by month/year

試圖按類型制造總產品並按月/年匯總。

三張桌子:

  • 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)

在此輸入圖像描述

嘗試在分組中僅使用年份和月份

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM