![](/img/trans.png)
[英]JPQL query for select on entities having @OneToMany relation with optional search parameters
[英]JPQL select Entities assigend/ not assigned to a relation
我有兩個實體
class A{
}
class B{
@OneToMany()
@JoinTable(name = "a_b", joinColumns = { @JoinColumn(name = "a_id") }, inverseJoinColumns = { @JoinColumn(name = "b_id") }, uniqueConstraints = { @UniqueConstraint(columnNames = { "b_id" }) })
private Set<A> aSet;
}
該關系是可選的,因此並非每個 A 都將分配給 B,也不是每個 B 都必須有任何 A(s)。
我需要兩個查詢,一個查詢 select 所有分配給任何 B 的 A,另一個查詢 select未分配給任何 B 的 A。
我想保留連接表並且我不希望 A bean 引用 B 所以不允許修改關系。
有任何想法嗎?
您可以使用RIGHT JOIN
:
SELECT a FROM B b RIGHT JOIN b.aSet a WHERE b IS NULL
和
SELECT a FROM B b RIGHT JOIN b.aSet a WHERE b IS NOT NULL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.