Mysql分页查询问题

Chicken庆 2018-08-07 07:02:56
我有6条数据,需要查出第2页的数据,每页数据两条,并且根据fenshu字段进行排序:
1.(SELECT * from grade a ORDER BY a.fenshu desc ) LIMIT 2,2;
2.(SELECT * from grade a ORDER BY a.fenshu ) LIMIT 2,2;
3.SELECT * from grade a ORDER BY a.fenshu asc LIMIT 2,2;

但是1 2查出来的结果都是一样,3查询出来的结果却不一样,这是什么原因呢, 有大神解释一下吗?谢谢

...全文
230 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyachao110 2020-09-07
  • 打赏
  • 举报
回复
SELECT * from grade a ORDER BY a.fenshu asc LIMIT (pageNum-1)*pageSize,pageSize; 分页应该是这样的,第一个参数是当前页数-1乘以每页条数,第二个参数是每页条数。
小迟丶 2018-08-20
  • 打赏
  • 举报
回复
假如说这些其实你懂的话,那么就是你对于limit 语句理解不透彻,取查询前n条数据,为limit 0,n ,也可为 limit n
小迟丶 2018-08-20
  • 打赏
  • 举报
回复
如果是的话,我给出以下解决方案: (1)先确定排序方式,比如你想安装成绩从高到低排序(2)你没有给出具体的表结构,我给你创建一个。
表结构为: 表名 student : 字段有id,name,grade,分别对应表id,姓名,成绩
最终:(1)第一页 sql 如下select s.name,s.grade from student s
order by s.grade desc
limit 0,2
(2)第二页 sql 如下select s.name,s.grade from student s
order by s.grade desc
limit 2,2
(2)第三页 sql 如下select s.name,s.grade from student s
order by s.grade desc
limit 4,2
小迟丶 2018-08-20
  • 打赏
  • 举报
回复
首先你提问时,要明确的说出你的需求,我看了一下,你是不是这个意思。 数据库表A中存在6条数据,现在你想根据sql将其分成3页,每页2条,并且需要数据安装表A中shuju字段排序??

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧