Reputation: 2818
I have a model A that has a many to many with B, which has a property c. Like the following.
class A {
@ManyToMany
List<B> bs;
}
class B {
@ManyToMany
List<A> as;
String c;
}
Is there a way (using detached criteria) to do a query like this: select all As where there exists a b in bs where b.c = some value? And if I can how would I do this?
Upvotes: 0
Views: 727
Reputation: 2818
I research some more and I found a way to do it. For those interested:
DetachedCriteria.forClass(A.class)
.addAlias("bs", "b")
.add(Restrictions.eq("b.c", c);
Upvotes: 1
Reputation: 803
I think this should do the trick:
from A a inner join a.bs b where b.c = ?
Upvotes: 1