用于查询的Hibernate代码

Kev*_*ith 4 hibernate

我发现这个Hibernate Criteria/Projection 教程清晰,简洁,内容丰富.

作者APRajshekhar说,

SELECT COUNT(ID) FROM ORDER  HAVING PRICETOTAL>2000 GROUP BY ID
Run Code Online (Sandbox Code Playgroud)

可以在Criteria查询中重写如下:

List orders = session.createCriteria(Order.class)
     .setProjection( Projections.projectionList()
      .add( Projections.count(“id”) )
       .add( Projections.groupProperty(“id”) )
     )
      .list();
Run Code Online (Sandbox Code Playgroud)

但是,在HAVING PRICETOTAL>2000Hibernate代码中出现的位置是什么?此比较是否存在缺少的标准(SQL中的where子句)?

ndt*_*viv 5

是.你还需要:

.add(Restrictions.gt("priceTotal", 2000))
Run Code Online (Sandbox Code Playgroud)

假设Order类上的PRICETOTAL属性的名称确实是"priceTotal"