繁体   English   中英

使用 Hibernate Panache 进行计数和分组

[英]Count and group with Hibernate Panache

我有两张桌子,它们之间是One to Many关系。 它们的定义如下:

@Entity
@Table(name = "accounts")
data class Account(
    @field:Id
    var id: UUID? = null,

    @ManyToOne
    var gender: Gender? = null,

    var birthday: Long = 0) {

  @ManyToMany(fetch = FetchType.EAGER, cascade = [CascadeType.MERGE])
  @JoinTable(
      name = "account_interests",
      joinColumns = [JoinColumn(name = "account_id")],
      inverseJoinColumns = [JoinColumn(name = "interest_id")]
  )
  var interests: Interests = emptyList()
}

@Entity
@Table(name = "genders")
data class Gender(
    @field:Id
    var abbr: Char? = null,
    var description: String = ""
)

我想从数据库中选择数据,我首先使用 SQL:

SELECT g.description, a.gender_abbr, count(a.gender_abbr)
from accounts a
         inner join genders g on g.abbr = a.gender_abbr
group by a.gender_abbr, g.description

问题是,如何将上述 SQL 转换为 hibernate panache HQL?

我想这样的事情可以做到吗?

select g.description, g.abbr, count(p)
    from Account a
    inner join a.gender as g
    group by g.abbr, g.description

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM