有没有办法避免使用tmp表?
我使用具有聚合函数(sum)的查询来生成每个产品的总和:
结果如下所示:
product_name | sum(qty) product_1 | 100 product_2 | 200 product_5 | 300
现在我想加入上面的结果到另一个表中称为产品.
所以我会有一个这样的总结:
product_name | sum(qty) product_1 | 100 product_2 | 200 product_3 | 0 product_4 | 0 product_5 | 300
我知道这样做的一种方式是将第一个查询结果转储到临时表,然后将其与产品表一起加入.有没有更好的办法?
解决方法
SELECT Product_Name,Total FROM ProductTable x LEFT OUTER JOIN (SELECT SUM(qty) as Total,ProductID FROM InventoryTable GROUP BY ProductID) y ON x.ProductID = y.ProductID