gpt4 book ai didi

mysql - 如何对按日期排序的不断更新的提要进行分页

转载 作者:行者123 更新时间:2023-11-29 06:51:46 28 4
gpt4 key购买 nike

我有一个内容提要,按 date DESC, id DESC 排序.
date只是一个日期,不是日期时间。
id是典型的INT auto_increment .

我需要查询 n “在特定行之后”的行。 (想象一个需要“获取比当前最后一项更旧的项目”的无限滚动)

我会查询 where id < :last_id , 但问题是 date 的顺序与 _id 中的一个不一致.

我会查询 where date < :last_date ,但问题是“每天”有超过 1 个项目。我会丢失所有使用相同日期的项目。

我会查询 ORDER BY date DESC, id DESC LIMIT x, n但是提要可能会在 2 个查询之间发生变化,将新项目添加到顶部,从而改变整个偏移量。

我目前的 hacky 解决方案是查询 where date <= :last_date ORDER BY LIMIT date DESC, id DESC LIMIT n+20然后“手动”丢弃当前最新项目之前的结果。 (希望不超过 20 个)。

我确定我不是第一个遇到类似问题的人...有什么想法吗?

最佳答案

如果您每天有不止一件商品,那么您应该已经有了次要排序顺序。如果它是 id,那么像这样写你的 where 子句:

WHERE date < :last_date OR (date = :last_date AND id < :last_id)

关于mysql - 如何对按日期排序的不断更新的提要进行分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14942162/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com