Php 休息及;MySQL偏移量选择

Php 休息及;MySQL偏移量选择,php,mysql,rest,Php,Mysql,Rest,我有一个REST服务和方法,它接收属性offset和count url示例:blabla?偏移量=10&计数=10 假设我正在为无限滚动选择数据,我的站点有很多用户,所以当我向下滚动时,我在数据库中有新项目,这意味着当我选择偏移量10和计数10时,它有新的10个项目,所以我将选择相同的数据。MySQL是否有一些技巧来阻止它,并正确地选择它?将您的数据放入定义的、可复制的顺序中;意思是按日期或id等排序,每次排序时顺序都是稳定的。然后使用列表中最后一项的日期/id/作为“偏移”: bla?last

我有一个REST服务和方法,它接收属性offsetcount

url示例:blabla?偏移量=10&计数=10


假设我正在为无限滚动选择数据,我的站点有很多用户,所以当我向下滚动时,我在数据库中有新项目,这意味着当我选择偏移量10和计数10时,它有新的10个项目,所以我将选择相同的数据。MySQL是否有一些技巧来阻止它,并正确地选择它?

将您的数据放入定义的、可复制的顺序中;意思是按日期或id等排序,每次排序时顺序都是稳定的。然后使用列表中最后一项的日期/id/作为“偏移”:

bla?last=12345&count=10
挑选*
来自富
其中id<[最后一个id]
按id描述订购
限制[计数]
在这种情况下,在使用id时,您需要确保您的id始终递增,以便新记录的id始终高于旧记录。或者使用另一个标准进行排序/偏移

bla?last=12345&count=10

  SELECT *
    FROM foo
   WHERE id < [last id]
ORDER BY id DESC
   LIMIT [count]