[英]JPA - Writing join query with 2 foreign keys
I have 2 entities:我有 2 个实体:
@Entity
@Table(name = "HOUSE")
public class House {
//other fields
@ManyToOne
@JoinColumn(name = "OWNER_1", referencedColumnName = "OWNER_ID")
private Owner owner1;
@ManyToOne
@JoinColumn(name = "OWNER_2", referencedColumnName = "OWNER_ID")
private Owner owner2;
}
@Entity
@Table(name = "OWNER")
public class Owner {
@Id
@Column(name = "OWNER_ID")
private String id;
}
I have the SQL query like this to join 2 tables:我有这样的 SQL 查询来加入 2 个表:
select a.*, b.* from HOUSE a INNER JOIN OWNER b on a.OWNER_1 = b.OWNER_ID or a.OWNER_2 = b.OWNER_ID
But I don't know how to write it in JPA query.但我不知道如何在 JPA 查询中编写它。 Anyone can help?任何人都可以帮忙吗?
JPA query would be quite similar: JPA 查询将非常相似:
select a, b
from House a, Owner b
where a.owner1.id= b.id or a.owner2.id = b.id
Just keep in mind that the result of query would be a List<Object[2]>
, which you have to parse yourself.请记住,查询的结果将是List<Object[2]>
,您必须自己解析。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.