在SQL Server中使用Sum Aggregate函数进行内部联接

时间:2011-06-20 12:33:58

标签: sql sql-server-2005 sum aggregate-functions inner-join

我有三个表StockSummary,Item,ItemSpecification。 在这里,我想加入这三个表并获得Sum(StockSummary.Quantity)。 主要栏目如下:

TableA: StockSummary(ItemID, Quantity)
TableB: Item(ItemID, ItemName, SpecificationID)
TableC: ItemSpecification(SpecificationName, SpecificationID)

期望的结果应该给出ItemName,SpecificationName和SUM(Quantity)。如何在Inner Joins中使用Aggregate函数?

1 个答案:

答案 0 :(得分:6)

您汇总了所需的列&按余数分组,列来自连接结果的事实与您的情况无关;

select
   b.ItemName,
   c.SpecificationName,
   sum(a.Quantity)
from
   tablea a
   inner join tableb b on b.ItemID = a.ItemID
   inner join tablec c on c.SpecificationID = b.SpecificationID
group by
   b.ItemName,
   c.SpecificationName