Как отфильтровать сущность B в jpa соединения - PullRequest
0 голосов
/ 29 июня 2018
  • У меня есть Entity_A, у которого есть OneToMany связь с Entity_B.

  • Entity_B имеет флаг, который указывает, активен ли он.

Как выбрать объединяемый объект A и только объект B, если он активен?

1 Ответ

0 голосов
/ 29 июня 2018

JPA Запрос: Документация

SELECT DISTINCT entA FROM Entity_A entA JOIN FETCH entA.entityBSet as entB WHERE entB.active = true

Обновление - попробуйте @ где

@Entity
public class Entity_A {
  @Id
  @Column(name = "ID")
  private Integer id;

  @OneToMany(mappedBy = "entityA")
  @Where("active = true")
  private Set<Entity_B> entityBSet;
}

@Entity
public class Entity_B {
  @Id
  @Column(name = "ID")
  private Integer id;

  @Id
  @Column(name = "ACTIVE")
  private Integer active;

  @ManyToOne
  private Entity_A entityA;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...