HQL:通过加入选择总和组

时间:2018-04-24 10:07:12

标签: hibernate hql

在HQL中,我会这样做一个查询:
我想按类别

选择类别名称和总和montantdebit
@objc func imageViewTapped() {
    // Image has been tapped
}

category{ idcategory ;namecategory}  

我尝试了以下内容:

 operation {montantdebit , Category}

我犯了错误:

select cat.nameCategory, sum(operation.montantdebit)  from Operation operation join  operation.category  cat group  by cat.idCategory

2 个答案:

答案 0 :(得分:0)

  • 你能否提供更多详细信息,例如表中的表和列 表
  • 或者您可以参考下面给出的查询:

      

    查询query = session.createQuery("来自员工");

         

    query = session.createQuery("选择e.name,sum(e.salary),   计数(E)"                         +"来自员工e,其中e.name喜欢'%i%'分组由e.name");

  • 或者您可以参考以下来源: https://www.journaldev.com/2954/hibernate-query-language-hql-example-tutorial

答案 1 :(得分:0)

您的查询需要解决两件事:

  1. 您必须在GROUP BY子句中包含字段nameCategory
  2. 您可以排除JOIN子句,因为Category对象是封装在Operation对象中的对象
  3. 您必须按如下方式编写查询:

    SELECT operation.category.nameCategory, sum(operation.montantdebit) 
    FROM Operation operation
    GROUP BY operation.category.idCategory, operation.category.nameCategory