我有两个如下实体
public class Author{
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy =
"author")
@Fetch(FetchMode.SUBSELECT)
private Set<Book> books;
}
public class Book{
@ManyToOne
@JoinColumn(name = "AUTHOR_ID_REF", nullable = false)
private Author author;
private String bookCategory;
private String bookName
}
在此表中,我希望获取所有作者,除非Book表中有bookCategory ='Comic'AND bookName ='SuperKid'的作者行。 如果bookCategory和bookName匹配,则我不应该得到作者。
感谢您的帮助。
答案 0 :(得分:0)
您可以使用:
SELECT author FROM Author author
JOIN author.books book
WHERE book.bookCategory <> 'Comic' AND book.bookName <> 'SuperKid'