請攻擂台:一個關于多BOM查詢的Select 語句
BOM組成:
產品---->|-->模塊-->零件
|
|-->包裝零件
共涉及到四個表.
Tbl_BOM_Product 此表保存組成產品的BOM列表
Tbl_BOM_Group 此表保存組成模塊的BOM列表
Tbl_Part 此表保存產品,模塊,零件等的基本資料
Tbl_Stock 此表保存零件庫存數
各表結构如下:
Tbl_BOM_Product 'Quantity是用量
Product_No Part_No Quantity
Prod001 G001 1
Prod002 G001 1
Prod003 G002 2
Prod001 Part001 3
Prod003 Part001 3
Prod002 Part005 6
----------------
Tbl_BOM_Group 'Quantity是用量
Group_No Part_NO Quantity
G001 Part004 2
G001 Part007 1
G001 Part013 3
G002 Part002 2
G002 Part004 1
----------------
Tbl_Part '如果Part_Type 等于I屬于零件,等于S屬于產品,等于G屬于模塊
Part_No Part_Name Part_Type
Part001 aa I
Part002 bb I
Part004 cc I
Part005 dd I
Part007 ee I
Part013 ff I
Prod001 PP1 S
Prod002 PP2 S
Prod003 PP3 S
G001 GG1 G
G002 GG2 G
----------------
Tbl_Stock ' 不同倉庫可以存放相同的零件
Part_No Stock WareHouse
Part001 400 WH1
Part004 1200 Wh2
Part001 300 Wh2
.... ...
應該描述清楚了吧,那好,就說說我要得到什么結果.
其實我要根据多個產品求出他們的零件列表,即輸入產品Prod001 150個,Prod002 100個,Pro003 50 個,給我算出他們總共需要多少零件
結果形式為: 'xxxxxx為總數
Part_NO Part_Name Total_Quantity Stock Balance
-----------------------------------------------
Part001 aa xxxxxx yyyyy xxxxxx-yyyyy
Part002 bb xxxxxx yyyyy ..
.... ... ......
要求要用一條Select 語句實現,要考慮實現速度和效率,重分獎賞.