JP QL - 过滤结果为一对多关系

时间:2010-08-19 14:06:44

标签: java orm jpa jpql

我试图构建一个JPQL查询,并希望有比我更多JPA经验的人可以提供帮助。考虑以下两个实体:

class Author{
  String name
  @OneToMany(mappedBy="author")
  Set<Book> books
}

class Book{
  String title  
  Boolean inPrint
  @ManyToOne
  Author author
}

如果我想返回一个特定的作者(按名称)并急切地获取(即LEFT JOIN FETCH)Book.inPrint标志为真的书籍,我将如何在JPQL中表达?

1 个答案:

答案 0 :(得分:2)

SELECT a FROM Author a LEFT JOIN a.books b WHERE b.inPrint = true OR b is null