全能码农-ss 2016-06-13 07:33 采纳率: 71.4%
浏览 1245
已采纳

关于分页的2种方式,sql应该怎么写?

分页方式有两种
1 第一种是有总数的,能看到一共多少页,一共多少条数据。客户端传2个参数分页,每页数量和当前页
2 第二种是无总数的,不能看一共有多少,下一页有没有得点了才知道,类似微博朋友圈,客户端也传2个参数,每页数量,下一页的游标(id)
sql类似这样 select * from table where id >? order by id desc limit ?

问题来了:第二种是涉及到排序的。如果游标是id,按照id排序,这个没问题。如果游标是id,但是按照其他排序(比如创建时间),因为按照创建时间排序的结果集,id有可能是任意跳跃的。那么sql应该怎么写? 很明显id>?已经不能满足了。

  • 写回答

5条回答 默认 最新

  • _1_1_7_ 2016-06-13 07:43
    关注

    按照其他排序,就要对所有的记录进行排序了,这时候岂不是知道了总数,就变成了第一种方式了;
    之所以用第二种分页,我想就是因为数据量比较大,不好全部查询出来;

    一般情况下id和创建时间应该是一致的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥100 c语言,请帮蒟蒻看一个题
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)