У меня есть две сущности A
и B
, как показано ниже:
@Entity
public class A {
@Id
private int id;
private String name;
private boolean hasFailedChild;
@OneToMany
private List<B> bs;
public A(String name, long count) {
this.name = name;
this.hasFailedChild = (count > 0);
}
}
@Entity
public class B {
@id
private int id;
private String name;
private String status;
@ManyToOne
private A a;
//required constructors
}
Я пытаюсь получить все A
s вместе со счетом B
s со статусом Failed
используя @Query
.
Я пробовал с помощью приведенного ниже запроса:
public interface ARepository extends CrudRepository<A, Integer> {
@Query(value = "select new A(a.name, count(b)) " +
"from A a left join a.bs b where b.status = 'Failed'")
List<A> findAllA();
}
Однако он не работает. Может ли кто-нибудь помочь мне здесь.