hibernate - hibernate grails顺序更改结果数

标签 hibernate grails gorm

我有一个带子游览的域位置。
如果我按旅游顺序订购,结果数量会发生变化

 Location.withCriteria{
         tour{
               order('date')
         }
 }//will gives me fewer results than

 Location.withCriteria{
         order('name')
 }

我尝试了各种方法来定义关系,方法是使用belongsTo,hasOne,ect等,但是还没有找到能够给出相同结果数的任何东西。

最佳答案

使用“totalCount”获取分页的记录号可能会导致差异。

records.totalCount

这会触发另一个自动生成的sql查询,该查询默认情况下可以使用内部联接。如果原始条件使用hibernate's fetchMode.JOIN, it will use outer join by default。这可能会引起您意想不到的变化。

一种解决方法是创建您自己的计数查询。

关于hibernate - hibernate grails顺序更改结果数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55637562/

相关文章:

java - 跨方法的 Hibernate session 和事务

java - 在远程环境中运行 grails 的问题

grails - 如何创建自定义Grails查询

java - 如何以编程方式为特定实体字段添加属性转换器?

重新加载jqgrid的Java代码

Grails 一行(缩写)属性约束定义可能吗?

grails - Grails 3-某些域类导致空指针异常

java - 对具有关系的对象实现save() Action ?

grails - 在GORM中的User域的子类上是否允许使用findByUsername

java - 使用 spring-boot-starter-data-jpa 时出现 Hibernate-core 错误