Переход в спящий режим HQL:два уровня соединений
Вопрос
Я новичок в HQL, и у меня есть следующие отношения между таблицами:
Term
имеет многоDefinitions
Definition
имеет многоDefinitionProducts
DefinitionProducts
имеет одинProduct
Я хочу получить список Terms
у которых есть хотя бы один Definition
у которого есть по крайней мере один DefinitionProduct
это имеет специфический Product
Это моя лучшая попытка (в Grails):
Term.findAll("from Term t, Definition d inner join t.definitions def,
def.definitionProducts dp where ? = some elements (dp.product)",
Product.get(1))
С учетом вышесказанного я получаю исключение "def.definitionProducts не сопоставлено".
Решение
выберите t из термина t присоединиться к t.definitions def присоединиться к def.definitionProducts dp, где dp.product=?
Не связан с StackOverflow