У меня есть вопрос. У меня есть 3 объекта Book-> Part-> Страница с отношениями.
Book.java
@Entity
@Table(name = "Book")
public class Book{
@ID
@Column(name = "id")
private Long id;
@OneToMany
@JoinColumn(name="bookid", referencedColumnName="id")
private Set<Part> parts = new HashSet<Part>;
}
Part.java
@Entity
@Table(name = "Part")
public class Part{
@ID
@Column(name = "id")
private Long id;
@Column(name="bookid")
private Long bookid;
@ManyToMany
@JoinTable(name="partpage",
joinColumns = @JoinColumn(name = "id")
inverseJoinColumns = @JoinColumn(name = "pageid")
private Set<Page> pages = new HashSet<Page>;
}
Page.java
@Entity
@Table(name = "Page")
public class part{
@ID
@Column(name = "pageid")
private Long id;
@Column(name="color")
private String color;
@Column(name="type")
private String type;
}
У меня есть запрос = "Выберите b ИЗ книги b". Этот запрос возвращает все книги со всеми связями и страницами.
Что мне нужно .
Мне нужно посчитать, сколько страниц с цветом = зеленый и тип = комедия в каждой книге. Возможно ли сделать это одним запросом?
Спасибо всем.