SELECT *
FROM [Group] g
INNER JOIN User2Group ug
**on g.Id != ug.GroupId**
INNER JOIN [Activity] a
on a.Id = g.ActivityId
WHERE g.UserId != 2
AND a.Lineage like '0,1,%'
Groupe> 1-n> User2Group < n-1 < utilisateur mn relationQuel est l'équivalent HQL de ce SQL?
activité> 1-n> Groupe 1-n
Essayer d'obtenir tous les groupes qu'un utilisateur n'a pas déjà ajouté à leur compte.
Ce que j'ai jusqu'à présent:
var groups = repository.SimpleQuery<Group>("from Group as g join fetch g.Users as u join fetch g.Activity as a where g.Type != ? and a.Lineage like ? and g.CreatedBy.Id != ?", Group.GroupType.Deleted, string.Format("{0}%", lineage), currentUser.Id);
Ce qui m'a trébuché est le « ! Sur g.Id = ug.GroupID »
Ce que je fini avec: groupes var = repository.SimpleQuery (début, spectacle, « du groupe en g où g.Type = ? et g.Activity.Lineage comme? et g.CreatedBy.Id! =? et g.Id pas dans (sélectionnez g.Id du groupe comme g joignez g.Users comme u où u.Id =?) ", Groupe. GroupType.Deleted, string.Format ("{0}%", lignage), currentUser.Id, currentUser.Id); –
rball