休眠计数,总和等

时间:2012-04-01 14:05:33

标签: sql-server hibernate netbeans

使用Hibernate / SQL Server,

假设我有实体A,具有组合实体Aa,Ab等,其中包含字段x,y,z。

Query queryResult = s.createQuery("from A");
java.util.List A;
selectedA = queryResult.list();

我可以使用

轻松获取子实体的数量
int countAa = A.getAas().size();

但我怎么能用像例如

这样的条件做点什么呢
int count = A.getAas() "where x = 2"

int count = A."get sum of Abs.y"

我每次都应该制作新的查询还是有其他方式?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

预测标准将解决您的问题。检查here以获取文档

答案 1 :(得分:0)

您可以这样写:

Query queryResult = s.createQuery("select sum(abs(y)) from A");
  • abs(y)是一个mysql函数,因此如果您使用其他数据库引擎,请查看数据库手册

或     查询queryResult = s.createQuery(“从A中选择计数(*),其中x = 2”);

您还可以使用“分组依据”和“拥有”。更多细节http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html#queryhql-grouping