【问题标题】:Joins in Hibernate Criteria query language by primary and foreign key Relation通过主键和外键关系加入 Hibernate Criteria 查询语言
【发布时间】:2016-06-30 14:19:50
【问题描述】:

我想从三个相关的表中获取记录,如下所示:

Book.java Book.java {Bid,name,authorid //设置并获取 }

Author.java {Aid,aName,age //设置和获取}

Company.java {cId,bookId,Cname//设置和获取}

这些是 POJO 中的类和属性

所以我想用Hibernate条件查询语言从所有这些表中获取Bid,Aid,aName,Cname,请帮助我,我是新的hcql。

注意:这些表之间只有主键和外键关系,没有一对一或一对多的关系

【问题讨论】:

  • 如果您的实体之间没有@ManyToOne,则不能。在您的 Book 实体中,您必须有一个带有作者的@ManyToOne 而不是字符串 authorid
  • 好的,谢谢,至少可以使用 hql 吗?格式相同

标签: hibernate join


【解决方案1】:

使用 Hql,您可以执行以下操作:

select book.Bid, author.Aid, author.aName, company.Cname from Book book,Author author,Company company where
book.authorid=author.Aid and book.Bid=company.bookId

【讨论】:

  • 如果假设我不知道这两个表之间的关系,那么我该如何在 hql 中做同样的事情,就像我以以下格式输入 Book_Bid、Book_authorid、Company_Cid、Author_Aid、Author_aName 和每次我需要解析输入并执行一些字符串操作时,此输入可能会有所不同,我可以在查询中实现
  • 这个查询是hql。如果您不知道关系,我看不出进行此类查询的意义,只需删除 where 条件,您将得到一个没有意义的交叉连接
猜你喜欢
  • 1970-01-01
  • 2012-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-02
相关资源
最近更新 更多