2017-02-09 34 views
0

我有WH_table和Store_table的名字兩個表,我想創建查詢以獲取導致的結果見下表如前所述,你誰能幫助創建查詢GROUP BY子句兩個表 - SQL服務器

倉庫表

╔══════════════╦═════╗ 
║  Item  ║ Qty ║ 
╠══════════════╬═════╣ 
║ Foot-ball ║ 1 ║ 
║ Foot-ball ║ 1 ║ 
║ Gloves  ║ 1 ║ 
║ Track suites ║ 1 ║ 
╚══════════════╩═════╝ 

Store表

╔═══════════╦═════╗ 
║ Item ║ Qty ║ 
╠═══════════╬═════╣ 
║ Foot-ball ║ 1 ║ 
║ Foot-ball ║ 1 ║ 
║ Gloves ║ 1 ║ 
╚═══════════╩═════╝ 

[R esult

╔════════════╦═══════════╦══════════════╗ 
║ Item ║ Qty in WH ║ Qty in Store ║ 
╠════════════╬═══════════╬══════════════╣ 
║ Foot-ball ║   2 ║   2 ║ 
║ Gloves  ║   1 ║   1 ║ 
║ Tracksuite ║   1 ║   0 ║ 
╚════════════╩═══════════╩══════════════╝ 

回答

1

您可以使用FULL JOIN

SELECT ISNULL(w.Item,s.Item) Item, 
     ISNULL(w.Qty,0) Qty_In_WH, 
     ISNULL(s.Qty,0) Qty_In_Store 
FROM ( SELECT Item, 
       SUM(Qty) Qty 
     FROM dbo.Warehouse 
     GROUP BY Item) w 
FULL JOIN (SELECT Item, 
        SUM(Qty) Qty 
      FROM dbo.Store 
      GROUP BY Item) s 
    ON w.Item = s.Item;