HQL:获取集合的最后一个元素

时间:2013-10-30 11:42:09

标签: hibernate hql hibernate-mapping

我有Person实体,它与Address实体(具有一些布尔属性)具有多对多关系。此关系表示单独表(不是实体)的帮助

我需要一个像这样的查询: “来自Person p,其中p.addresses为空或p.addresses.getLastElement.propert为TRUE”

问题:

  1. 我可以在HQL问题中提取p.addresses集合的最后一个元素吗?如果是,怎么样?
  2. 如果不是,我可以将多对多关系表示为实体吗?

1 个答案:

答案 0 :(得分:2)

  

我可以在HQL问题中提取p.addresses集合的最后一个元素吗?   如果是,怎么样?

对于这个问题,您可以尝试以下方法:

from Person p where p.addresses[size(p.addresses) - 1].propert = TRUE

这不会获取收集的最后一个实体,但会检查最后一个实体的属性值&将相应地提取Person