我需要幫助。按約會條件加入3張桌子
TBL:WarehouseInventory
Date | DelRec | ProductId | Quantity
2015-09-10 | 110 | 1 | 100
2015-09-12 | 111 | 1 | 100
2015-09-12 | 111 | 2 | 200
2015-09-12 | 111 | 3 | 300
TBL:取款
Date | ID | ProductId | Quantity | CustomerId
2015-09-11 | 1 | 1 | 400 | 2
2015-09-12 | 1 | 1 | 100 | 1
2015-09-12 | 2 | 2 | 200 | 1
2015-09-12 | 3 | 3 | 300 | 1
TBL:客戶
Customer Id | Name
1 | Somebody
2 | Someone
輸出應該是這樣的
DelRec | Date Added | ProductId | Stocked | Withdrawn | Customer
110 | 2015-09-10 | 1 | 100 | 0 | NULL
0 | 2015-09-11 | 1 | 0 | 400 | Someone
111 | 2015-09-12 | 1 | 100 | 100 | Somebody
111 | 2015-09-12 | 2 | 200 | 200 | Somebody
111 | 2015-09-12 | 3 | 300 | 300 | Somebody
這就是我來了這麼遠,它給了我一個錯誤的輸出
select wi.DateAdded as 'Date Added', max(wi.DeliveryReceipt) as 'Delivery Receipt', wi.ProductId as 'Product',
max(isnull(wi.Quantity, 0)) as 'Stocked', max(isnull(w.Quantity, 0)) as 'Withdrawn', e.Customers as 'Customer'
from WarehouseInventory wi
cross join Withdrawals w
cross join Customer e
group by wi.DateAdded, wi.ProductId, e.Customers, wi.DeliveryReceipt, w.ProductId
基本上,我需要加入的日期和產品這兩個表,如果有在一個空值表,只是讓它0.我感謝您的幫助。
您的解決方案有效!謝謝!我只是複製你的解決方案,改變了一些字段名稱,除了一個之外,它給了我正確的輸出;所有的客戶都是NULL,我無法讓它工作。我必須爲我研究這個新的關鍵詞......「聯盟」。再次感謝! – Ibanez1408