I keep trying variations of this query and can’t seem to make this happen. I’ve also referenced this post: Path Expected for Join! Nhibernate Error and can’t seem to apply the same logic to my query. My User
object has a UserGroup
collection.
I understand that the query needs to reference entities within the object, but from what I’m seeing I am…
@NamedQuery( name = "User.findByGroupId", query = "SELECT u FROM UserGroup ug " + "INNER JOIN User u WHERE ug.group_id = :groupId ORDER BY u.lastname" )
Advertisement
Answer
select u from UserGroup ug inner join ug.user u where ug.group_id = :groupId order by u.lastname
As a named query:
@NamedQuery( name = "User.findByGroupId", query = "SELECT u FROM UserGroup ug " + "INNER JOIN ug.user u WHERE ug.group_id = :groupId ORDER BY u.lastname" )
Use paths in the HQL statement, from one entity to the other. See the Hibernate documentation on HQL and joins for details.