(Сначала я хотел бы извиниться, если это дубликат, я не могу найти какое-либо хорошее решение для него, хотя оно должно быть простым)
Я создаюотчеты из продаж-данных и должны выводить некоторые агрегированные значения наряду с некоторыми неагрегированными / не сгруппированными, такими как Имя.
Это то, что я хотел бы вывести:
Общая прибыль на одного сотрудника с User.Name и SUM (Order.Profit), например:
Name Profit [+ more aggregated columns]
-------------------
John Doe | $250
James Smith | $130
Это довольно просто с простым SQL, например:
SELECT
u.Name,
x.TotalProfit
FROM dbo.Users u
INNER JOIN (
SELECT o.UserID as UserID,
SUM(o.Profit) AS TotalProfit,
--[..] more aggregated columns
FROM Orders o
GROUP BY o.UserID
) x ON u.ID = x.ProfitToID
Я не хочу группировать по u.Name, так как это повлияет на производительность (подробнее о том, почему sqlteam.com )
Как мнесделать это с NHibernate?