在每个员工存储多行的表中,我想为每个员工提取一行,代表每个员工的最新条目。这是我使用手写 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 完成这种类型的查询。有什么想法吗?