我需要關於如何創建報告的建議,該報告將顯示第一列中的產品列表,隨後的列將是時間段。MYSQL:需要幫助創建一份庫存消耗報告
庫存表具有以下字段:
STOCK_ID StockQty InStock_Date UsageRate
什麼我希望做的是看每個股票項目,並通過使用其使用率插槽值進入未來的時間段。
例如,如果ProductA當前有庫存,庫存數量爲100,每週使用率爲10,那麼我將需要用數量爲10的下10周填充報表。 產品B可能有庫存數量爲30,每週使用率爲4 /周,所以我需要在接下來的7周內填充表格的下一行,值爲4,第8周與股票的其餘部分,2.等等剩下的產品。
進一步的要求是處理將來例如5周後進入的產品。我想執行上述操作,但首周將是第5周。
我想要做的另一件事是對上述數據進行計算,例如將每週數量乘以產品的售價以獲得預計收入按周計算。
我使用MYSQL 5,並嘗試以下解決方案:
CREATE PROCEDURE sp_DBR_Inventory_Test()
BEGIN
DECLARE i INT Default 0;
declare Max_Period_Id int(3) default 0;
select max(ceiling(Stock_QTY/Stock_Usage))
from hilmark.stock
into Max_Period_Id;
simple_loop:
LOOP SET i=i+1;
select Stock_Id,
Stock_Usage
from hilmark.stock;
IF i=Max_Period_Id THEN LEAVE simple_loop; END IF;
END LOOP simple_loop;
END
任何幫助將非常感激。
乾杯
傑克
能否請你發表你試過到目前爲止 – 2014-09-10 09:50:17
我一直在嘗試下面的代碼是什麼樣:CREATE PROCEDURE'sp_DBR_Inventory_Test'() BEGIN DECLARE我INT默認值0; 聲明Max_Period_Id int(3)默認爲0; 從hilmark選擇max(ceiling(Stock_QTY/Stock_Usage))。存入Max_Period_Id; simple_loop:LOOP SET i = i + 1; select Stock_Id, Stock_Usage from hilmark.stock; IF i = Max_Period_Id THEN LEAVE simple_loop; END IF; END LOOP simple_loop; END $$ I – ajdjackson 2014-09-10 19:42:13