如何使用SQL按商品单位(UNITS)分组计算最终库存数量?
按商品单位计算最终库存的SQL方案
嘿,这个需求很明确,咱们直接来解决它!要按UNITS分组计算每个单位的最终库存,核心逻辑就是该单位下所有入库量总和减去出库量总和,对应的SQL实现如下:
核心SQL代码
SELECT UNITS, SUM(QTY_IN) - SUM(QTY_OUT) AS FINAL_STOCK FROM book_stock_table GROUP BY UNITS;
逐行解释这个语句:
SUM(QTY_IN):将同一UNITS分组下所有记录的入库数量求和,得到该单位的总入库量SUM(QTY_OUT):计算同一UNITS分组下所有记录的出库数量总和SUM(QTY_IN) - SUM(QTY_OUT):总入库量减去总出库量,得到该单位的最终库存,用AS FINAL_STOCK给结果列设置一个易懂的别名GROUP BY UNITS:指定按商品单位进行分组聚合,保证每个单位单独计算库存数据
基于你提供的示例数据的测试结果
假设就你给出的那两条有效数据,运行这个SQL会得到如下结果:
| UNITS | FINAL_STOCK | |-------|-------------| | PCS | 25 | | BOX | 1 |
完全符合你要的按单位统计最终库存的需求~
内容的提问来源于stack exchange,提问作者asik
相关产品推荐
相关产品推荐

