ich, ob zumindest ein Element aus einer Sammlung überprüfen möchte (u.organisations
) in einer anderen Sammlung enthalten ist (?
= excludedOrganisations):HQL: Ist ein Element einer Sammlung in einer anderen Sammlung?
select distinct u from SystemUser u
join u.userGroups g
join u.organisations o
where 3 in elements(g.permissions) and
EACH_ELEMENT_OF(o) not in (?)
Wie kann ich die EACH_ELEMENT_OF
mit HQL auszudrücken?
Mein letzter Versuch ist:
select distinct u from SystemUser u
join u.userGroups g
where 3 in elements(g.permissions) and
not exists (
select org from Organisation org
where org in elements(u.organisations)
and org not in (?)
)
Aber ich bekomme die Ausnahme:
IllegalArgumentException occurred calling getter of Organisation.id
Hey, hast du damit Fortschritte gemacht? – octav
Meine Abhilfe ist mit einer for-Schleife, was mit relativ wenigen Elementen möglich ist. – deamon
Versuchen Sie, anstelle einer Liste von Organisationen eine Liste mit nur ihren IDs zu übergeben. Ich habe etwas ähnliches versucht und es hat funktioniert. – octav