19.分页

  • • 发表于 6年前
  • • 作者 大妖怪
  • • 12617 人浏览
  • • 4 条评论
  • • 最后编辑时间 6年前
  • • 来自 [技 术]

原创声明:本文为作者原创,未经允许不得转载,经授权转载需注明作者和出处

在前面的例子中我们查询数据都是有多少返回多少。但是在实际生产环境中,这样做是不可取的。因为demo中我们的数据只要10条、20条,但是在生产环境中,我们的数据可能就是10万条、20万条。试问这么多数据如果一次性返回会造成什么后果?首先,我们查询数据要很长时间。然后,通过返回给前端又要很长时间,关键是,那么多的数据返回给客户端,如果客户端配置差一点,好了可能好不容易等到数据来了,结果内存不足,客户端炸了。总之,这样会造成非常不好的客户体验。所以呢,我们需要把数据库中的数据分成一页一页的,每次只返回一页,客户端来控制它想获取的页数也每页多少条。比如前几章中学生表我们每次返回两条,分五页返回:

SELECT * FROM student LIMIT 0,2;

SELECT * FROM student LIMIT 2,2;

SELECT * FROM student LIMIT 4,2;


.
.
.
后面的依次类推。
可以看出,分页,主要是用了LIMIT关键字。这个关键字是这样的:LIMIT 开始位置,查询条数,
比如LIMIT 0,2说明是从第一条开始查询(下标都是由0开始),查询两条,那么返回的结果就是第一条和第二条。我们可以吧这个看做是一页,那么下一页就是第三条和第四条了,那就是LIMIT 2,2。
LIMIT也可以和我们上述的其它语句一起结合使用,并且一定是放在最后面的,比如:

SELECT * FROM student WHERE name like '%妖怪%'  LIMIT 0,2;


如果这样就会报错啦:

SELECT * FROM student LIMIT 0,2 WHERE name like '%妖怪%';


说的是语法错误。

分享到:
4条评论
Ctrl+Enter
作者

大妖怪

大妖怪

APP:1 帖子:76 回复:200 积分:7517

已加入社区[2943]天

梦里巷口,可有你倚门回首

作者详情》
Top