0

我的查询是在 SQL 中

Session.CreateQuery("SELECT MAX(T.Maximum) FROM (SELECT COUNT(ID) as 'Maximum' FROM Privilege WHERE IsActive = 1 GROUP BY PrivilegeModuleID ) AS T");

但我不知道 HQL (nhibernate) 中的语法

如果有人知道,请告诉我?

4

2 回答 2

0

据我所知,您无法从 HQL 中的子选择(隐式视图)中进行选择。但在你的情况下,这个子选择并不是真正需要的,所以解决方案应该很简单:

select max(count(p.ID)) from Privilege p where p.IsActive = 1 group by p.PrivilegeModule.id
于 2013-07-17T08:27:18.190 回答
0

SELECT COUNT(P.PRIVILEGE_ID) FROM PRIVILEGE P WHERE IS_ACTIVE = 1 GROUP by P.PRIVILEGE_MODULE_ID ORDER BY COUNT(P.PRIVILEGE_ID) DESC

于 2013-07-17T13:07:32.460 回答