在分页中旋转mysql查询

时间:2014-07-09 13:20:35

标签: php mysql pagination

如何按给定数字旋转选择。

我想在访问者的每次访问中轮换选择项目。

此外,我还有四类Premium,Gold,free和Recommend

首次访问时,会显示该项目。也使用分页(在分页的第一页)

第二次访问时,第二个Premium,Gold,Free,Recommend向上移动,最旧的到最后一页,最后一个项目。(在同一页面上)

第三次访问时,第三次访问,第二次访问最后一页,最后一项是最新的。(同页)

我在第一页上用cookie捕获了访问次数。

但我怎样才能循环选择?在类别Manner

Heres My Sql Query But This Is Not Worked For Pagination And Categorywised
{
 $pagination_limit=10;
 (SELECT foo FROM bar ORDER BY whatever LIMIT $n+1, $pagination_limit) UNION ALL
 (SELECT foo FROM bar ORDER BY whatever LIMIT $n)     
}

1 个答案:

答案 0 :(得分:0)

由于你有分页,我猜你有足够的结果需要第二页和第三页。

现在,如果您进行分页,您的引擎会将分页应用于热门查询并将底部结果粘贴到每个页面。

一个功能性但不是非常优雅的解决方案,就是将union和paginate包装在结果之后

SELECT foo FROM
(
    (SELECT foo FROM bar ORDER BY whatever OFFSET  $n+1) 
UNION ALL
    (SELECT foo FROM bar ORDER BY whatever LIMIT $n)
) as unionresult
LIMIT ($pagenumber * $pagination_limit), $pagination_limit

小字:我给你的是正确评估变量的任务。当然,在将它传递给查询之前,你应该评估($ pagenumber * $ pagination_limit)。