GORM query by association (query properties of child object)
Let's say we have a Book object and it has an associated Author object. To query Books based on certain properties of the Author we have 2 common ways to it.
1. Using HQL query
def results = Book.findAll(" from Book as b where :title = b.author.name) ", [title:"Mr Author"])
2. Using criteria with createAlias()
def results = Book.withCriteria {
createAlias("author", "a")
eq("a.name", "Mr Author")
}I hope this helps some of you out there. For some reason "createAlias" is not well documented in the Grails documentation, unless you cross reference the Hibernate docs.
0 comments:
Post a Comment