Hibernate Criteria有关order by和join的问题

时间:2012-03-28 13:53:01

标签: hibernate sql-order-by criteria

我有一个Hibernate实体“Contract”,它有一组“ContractVersions”(一对多映射)。这是一个缩短的映射:

<class name="Contract">
    <set name="versions" order-by="version_id" mutable="false" lazy="false" fetch="join">
        <key column="contract_id" not-null="true"/>
        <one-to-many class="ContractVersion"/>
    </set>
</class>

然后,我制定了一个标准,用于合同搜索,并希望按日期订购结果:

criteria.addOrder(Order.desc("createdAt"));

但是,当我查看生成的SQL时,我发现了一个问题。 Hibernate使用左外连接来选择带有版本的契约,并添加两个顺序:

... order by version4_.version_id, this_.created_at desc ...

对我来说,按日期排序更重要。有没有办法解决这个问题?

0 个答案:

没有答案