我有一个可能有父实体的实体。 我想运行此查询:
选择entity.parent.id = 9
的实体某些实体没有父(entity.parent = null)和N HIBERNATE无法运行此查询(QueryException - 无法解析属性)
如何使用HQL获取具有id为9的父实体的所有实体,避免使用父类为null的实体?
(在entity.parent.id = 9之前添加entity.parent不为null导致相同的异常)
可以选择使用嵌套的select语句,但我认为这不是最有效的解决方案。
答案 0 :(得分:2)
您在HQL查询中缺少from
子句。尝试重写它:
from entity where entity.parent is not null and entity.parent.id = 9
不确定,但可能entity.parent is not null
部分不是必需的。我想NHibernate会处理这种情况。