软件下载

mysql分页查询limit(如何利用Mysql的limit子句进行分页查询)

软件下载 投稿 2022-06-11 17:37:15 浏览
如何利用Mysql的limit子句进行分页查询及排名统计

 

前言

我们常用Mysql数据库的limit子句常用来做分页查询,典型的用法是在sql的select语句后面加上limit 分页语句,例如用Mybatis的分页sql查询写法:

<if test="size != null and size!=''">
 LIMIT #{pageNo}, #{size}
</if>

公式如下

select * from tableName limit offset,size

limit用于规定select查询结果集必须返回的数据,offset偏移量从0开始。

如果limit后指定一个参数并且值为整数,则表示返回最大的数据行数,例如:

select * from tableName limit 20
如何利用Mysql的limit子句进行分页查询及排名统计

 

表示最多返回20条记录,

关于limit参数:-1“,查询有数据问题

有人在mysql官方提了一个bug

如何利用Mysql的limit子句进行分页查询及排名统计

 

官方回复:

this is not a bug.
Instead, the fact that LIMIT X, -1 worked some time ago was a bug (low priority, though) and it was listed in the "known bugs" section. Finally it was fixed, so LIMIT no longer accepts negative arguments. Use a large positive number for that.

大意是说这不是一个bug,已修复,并且limit后面不再支持负数参数设置。

如下写法会报语法错误

select * from tableName limit 10, -1
如何利用Mysql的limit子句进行分页查询及排名统计

 

limit配合order by 获取文章浏览数排名查询

文章浏览数排名前五名

SELECT article_id,view_total FROM `ms_article_count`
ORDER BY view_total DESC
LIMIT 5;
如何利用Mysql的limit子句进行分页查询及排名统计

 

如果查询文章浏览数排名倒数五名,把desc改asc就可以了

SELECT article_id,view_total FROM `ms_article_count`
ORDER BY view_total ASC
LIMIT 5;

如果要查询前五名的第一名,

SELECT article_id,view_total FROM `ms_article_count`
ORDER BY view_total DESC
LIMIT 0,1;
如何利用Mysql的limit子句进行分页查询及排名统计

 

注意:偏移量从0开始。如果查询第二名,把offset改成1就可以了

LIMIT 1,1

然后以此类推。

「真诚赞赏,手留余香」

求资源网

真诚赞赏,手留余香

使用微信扫描二维码完成支付

继续浏览有关编程的文章
发表评论
留言与评论(共有 0 条评论)
   
验证码:
版权声明

求资源网所发布的一切破解补丁,软件,以及其他分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途。
否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。