使用Criteria API选择AVG(“...”)

时间:2010-08-12 19:59:10

标签: sql nhibernate hibernate activerecord criteria

我在将以下SQL语法转换为Criteria API时遇到了困难:

SELECT AVG(dbo.Member.Points) FROM dbo.Member WHERE dbo.Member.PaidMemberRegDate IS NOT NULL;

我有一个带有 Points 属性的 Member 类。我只想获得将 PaidMemberRegDate 属性设置为null的所有会员的平均积分

1 个答案:

答案 0 :(得分:3)

您应该可以使用预测来处理这个问题:

Criteria criteria = session.createCriteria(dbo.Member.class)
    .setProjection(Projections.avg("Points"))
    .add(Restrictions.isNotnUll("PaidMemberRegDate"))

更改周围的值以匹配您的类和关联,并且应该这样做。