В таблице, в которой хранится несколько строк для каждого сотрудника, я хочу получить одну строку для каждого сотрудника, которая представляет самую последнюю запись для каждого сотрудника. Вот где я с рукописным SQL:
SELECT [all the selected columns here]
FROM Nominations t
inner join
(select max(NominationId) mostRecentNominationId,
EmployeeId from Nominations group by EmployeeId) n
on n.mostRecentNominationId = t_.NominationId
Из исходных данных так:
nomination_id employee_id
-------------------------------
1 5
2 5
4 10
7 10
Это даст мне что-то вроде этого:
nomination_id employee_id
-------------------------------
2 5
7 10
Я не смог понять, как выполнить такой запрос через NHibernate ICriteria. Есть предположения?