GORM 分页和排序问题
GORM paginate and order issue
我想按 id DESC 排序,分页查询使用 GORM(mysql)。
var result []User
page := 1
size := 3
offset := (page - 1) * size
if err := conn.Limit(size).Offset(offset).Order("id DESC").Find(&result).Error;err != nil {
log.Panicf(err)
}
fmt.Println(result)
我的 table 有 15 条记录。
结果 return 喜欢 [15,14,13] 而不是 [3,2,1]
意思是先排序再分页,如何解决
请参考这个回答。 ORDER BY 在 LIMIT 之前首先由 sql 引擎执行。
我想按 id DESC 排序,分页查询使用 GORM(mysql)。
var result []User
page := 1
size := 3
offset := (page - 1) * size
if err := conn.Limit(size).Offset(offset).Order("id DESC").Find(&result).Error;err != nil {
log.Panicf(err)
}
fmt.Println(result)
我的 table 有 15 条记录。
结果 return 喜欢 [15,14,13] 而不是 [3,2,1] 意思是先排序再分页,如何解决
请参考这个回答。 ORDER BY 在 LIMIT 之前首先由 sql 引擎执行。