Приведенный ниже запрос не дает правильных результатов, когда я пытаюсь отфильтровать левую внешнюю сущность соединения через entityManager.createQuery в TypedQuery
@Entity
Class A{
@Column(name="Duration")
private int a;
@Column(name=ID)
private int b;
@OnetoMany
private List<B> classB;
}
@Entity
Class B{
@Column(name="Duration")
private int a;
@Column(name="country")
private String b;
@ManytoOne
private A classA;
}
После использования запроса создания с помощью TypedQuery:
TypedQuery<A> query=entityManager.createQuery("Select distinct ce from A ce join ce.classB cm where ce.ID<5 and cm.Duration<20 and cm.country='US' ")
whereClause не работает для cm.duration и cm.country. Это работает для ce.id <5. Я не получаю никакой ошибки, но мои результаты не фильтруются. Не знаю, почему это происходит. </p>