在没有投影属性的情况下在Nhibernate中进行分组

时间:2013-02-12 08:36:15

标签: c# nhibernate count group-by

我需要按一个属性进行分组,并且需要投射另一个属性的不同计数。 在Nhibernate中使用以下语法

          ICriteria criteria = base.CreateCriteria();
          criteria.CreateAlias("ChildItem", "ChildItem");
          criteria.SetProjection(Projections.ProjectionList()            
         .Add(Projections.CountDistinct("PropertyA"),"PropertyA")
         .Add(Projections.GroupProperty("ChildItem.PropertyB"))); 

将生成类似

的查询
SELECT count(distinct PropertyA),TableB.PropertyB From TableA inner join TableB On..
 Group By TableB.PropertyB 
Having(....

但我需要采用以下格式。

SELECT count(distinct PropertyA) From TableA inner join TableB On..
 Group By TableB.PropertyB
Having(....

如何按多个属性进行分组并投影少数分组项目,或者单独使用Nhibernate属性的项目计数?

0 个答案:

没有答案