在尝试在 postgres 中从服务器端实现分页时,我遇到了一个问题,即在使用限制和偏移关键字时,您必须在可能是主键的唯一列上提供 ORDER BY 子句。
在我的情况下,我使用 Pkeys 的 UUID 生成,所以我不能依赖增加键的顺序。ORDER BY pkey DESC - 可能不会总是在顶部产生更新的行。所以我求助于使用创建日期列 - 应该是唯一的时间戳列。
但我的问题是,如果 UI 客户端想要按其他列排序怎么办?如果它可能并不总是一个唯一的列,我会使用 ORDER BY user_column, created_dt DESC 以保持 postgres 分页的可预测结果。
这是正确的方法吗?我不确定我是否走对了路。请指教。