mysql分页数据如何写查询sql?
做网页开发,从后台获取列表数据时,一般获取的都是分页后的数据。那么用mysql怎么写分页数据的查询sql?
操作方法
- 01
首先看下我们表的数据,这个表里有25条数据,id从1到25。
- 02
要分页数据,首先我们假设一页有10条数据,我们可以用mysql的 limit关键字来限定返回多少条数据。并且用order by来排序数据,这里用 id来排序。所以第一页的sql可以如图这样写
- 03
执行后得到的数据如图,就是 id从1到10的前10条数据,因为我们是按id升序来排序的。
- 04
上面第一页的sql是简化的写法,完整的写法如图,得到的结果和上图的一模一样。 代码里 limit 0, 10 的意思是从第一条数据开始,取10条数据。(注意的是第一条数据是从0开始的)
- 05
那么第二页的sql怎么写?第二页的数据,关键是要知道是从哪一条数据开始,可以用这个公式得到: (页码-1) * 每页显示多少条 即 (2-1) * 10 = 10, 所以sql语句如图, limit 10, 10
- 06
执行后,结果正确,得到id从11到20的10条数据。
- 07
同理第三页数据的sql如图, 就是 limit 20, 10
- 08
查询的结果如图,因为这页只剩下5条数据了,所以只显示5条数据。 如果你有更多页的数据,后面的数据只需要按上面的公式,得到从哪行开始,就可以写对应的sql语句了。
赞 (0)