سؤال

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?

هل كانت مفيدة؟

المحلول 2

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);

نصائح أخرى

I think this should do the trick:

from A a inner join a.bs b where b.c = ?

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top