Внутреннее объединение с функцией суммирования в SQL Server - PullRequest
4 голосов
/ 20 июня 2011

У меня есть три таблицы StockSummary, Item, ItemSpecification. Здесь я хочу объединить эти три таблицы и получить Sum (StockSummary.Quantity). Основные столбцы:

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

Требуемый результат должен давать ItemName, SpecificationName и SUM (Количество). Как использовать функцию агрегирования во внутренних соединениях?

1 Ответ

6 голосов
/ 20 июня 2011

Вы объединяете желаемый столбец и группу по остатку, тот факт, что столбцы являются результатом результата объединения, не имеет значения в вашем случае;

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...