Ich benötige Unterstützung bei einem schwierigen Hibernate-Abfrageproblem. Ich habe folgende Einheiten:Ruhezustand: Wählen Sie Entitäten aus, in denen die Auflistung alle angegebenen Werte enthält.
public class Book {
private String bookId;
private String author;
private String isbn;
private Set<Tag> tags;
// getters, setters etc.
}
und
public class Tag {
private String tagId;
private String tagName;
// getters, setters, etc.
}
Es gibt eine many-to-many-Verbindung zwischen den beiden, die durch eine Join-Tabelle books_tags_mn dargestellt wird, mit den Spalten book_id und tag_id.
Was ich gerne tun möchte, ist das Folgende: Ich möchte eine Ruhezustand Abfrage/Kriterien Abfrage, die alle Buch, alle eines bestimmten Satzes von Tags zurückgeben. Was funktioniert, ist die Auswahl aller Bücher, die eines Satzes von Tags haben.
Ich habe mich mit der API-Kriterien beschäftigt, aber nicht wirklich verstanden. Also, was ich versuche (in Pseudo-HQL) zu tun
from Book book where book.tags containsAll(:tags)
Jede Hilfe auf diesem würde sehr geschätzt werden, so vielen Dank im Voraus.
Dank hinzufügen, die wie ein Zauber funktioniert! –
Falls die Sammlung Duplikate enthalten kann (nicht für IDs), möchten Sie vielleicht die Anzahl hinzufügen (distinct) – Ben