我需要清点存货中剩余的物品数量,但我不知道如何做到这一点。
项目
ITEM_ID ITEM_BARCODE ITEM_NAME ITEM_ROP
-------------------------------------------------
101 76164231 Marlboro 20 20
102 76164217 Marlboro B 20 10
103 9555192501305 Juicy Fruit 5
104 9300682016278 M & M Crispy 5
股票
STOCK_ID ITEM_ID STOCK_QUANTITY STOCK_DATE
----------------------------------------------
001 101 20 01-JUL-18
002 104 30 02-JUL-18
003 101 50 02-JUL-18
004 104 20 05-JUL-18
005 103 45 06-JUL-18
出售
SALES_ID ITEM_ID SALES_QUANTITY SALES_DATE
----------------------------------------------
001 101 20 02-JUL-18
002 104 30 02-JUL-18
003 101 35 03-JUL-18
004 103 20 09-JUL-18
应该有两个结果,第一个结果如下所示,它将根据表中的库存和销售额生成剩余的项目数量。表中的存货将保留项目数量的记录。同时,表sales将保存已售出数量项目的记录(stock\u quantity-sales\u quantity)。
ITEM_BARCODE ITEM_NAME QUANTITY
------------------------------------------
76164231 Marlboro 20 15
76164217 Marlboro B 20 0
9555192501305 Juicy Fruit 25
9300682016278 M & M Crispy 20
第二个输出是根据哪个项目低于表项中的重订货点(rop)来显示的
ITEM_BARCODE ITEM_NAME QUANTITY ROP
----------------------------------------------
76164231 Marlboro 20 15 20
76164217 Marlboro B 20 0 10
SELECT T.STOCK_DATE,
I.ITEM_BARCODE,
I.ITEM_NAME,
SUM(T.STOCK_QUANTITY) - SUM(S.SALES_QUANTITY) AS QUANTITY
FROM ITEMS I
INNER
JOIN STOCKS T
ON I.ITEM_ID = T.ITEM_ID
LEFT
JOIN SALES S
ON I.ITEM_ID = S.ITEM_ID
GROUP
BY I.ITEM_BARCODE,
T.STOCK_DATE,
I.ITEM_NAME
ORDER
BY T.STOCK_DATE;
有人能帮我吗?非常感谢。
暂无答案!
目前还没有任何答案,快来回答吧!