我正在尝试为库存数据库创建库存摘要报告,但我对如何操作感到困惑。这就是我的表格:
Stock_ID |日期| PO_ID | DR_ID | Product_ID | Stock_In | Stock_Out | Stock_Balance |
我希望我的输出看起来像这样:
Product_ID Stock_Balance
1 9000
2 8000
3 9000
4 10000
5 5000
6 9000
7 9000
8 9000
我已使用此sql脚本生成以上输出:
从stock_card中选择Product_ID,Stock_Balance
其中Date =(从stock_card中选择max(Date))
按产品ID分组
按Product_ID排序,Stock_Balance
不幸的是,这个脚本存在一个问题,即当产品ID的最大日期低于其他日期时,它不会显示在结果中。
请帮助我使用SQL新手,这真让我感到困惑。
答案 0 :(得分:0)
在子查询中执行分组,然后找到匹配的行。
select Product_ID, Stock_Balance
FROM stock_card s JOIN (
select MAX(Stock_ID) MaxID
FROM stock_card
GROUP BY Product_ID
) g ON s.Stock_ID = g.MaxID
Order by Product_ID, Stock_Balance