说,我有一个具有作为集合的操作历史的实体。我想按最新操作的日期对实体进行排序(这是历史的第一个元素)。
我想做这样的事情:
criteria.addOrder(Order("history[0].date"))
这可能吗?
答案 0 :(得分:1)
根本不可能。
您的历史记录的数据位于另一个表中,按此关系排序,您将需要更复杂的标准,至少涉及到另一个表的某种联接,我怀疑可能是别名。
发布您的课程的映射,我们或许可以提示如何执行此操作。
答案 1 :(得分:1)
据我所知,Criteria仅支持按映射属性排序,因此将上次修改的日期映射为计算属性(使用formula attribute of the property tag)也可以。
当然,这很难看,但是到目前为止还没有人发布更好的方法......
编辑:查询也可能执行得不太好,或许将其作为冗余列添加到实体表中是一个更好的选择。