存储过程基础(三)实现sql分页

        本文的主要内容是通过存储过程实现sql页面。

        为了方便演示,在数据库中创建了一张USER表,如下:

存储过程基础(三)实现sql分页

        接下来,结合这张表,通过存储过程实现sql页面。要求该存储过程有三个参数,一个参数为页数,一个参数为每页的条数,第三个参数为输出参数代表总页数。最后将根据输入的参数将查询到的记录和总页数进行显示,代码如下:

存储过程基础(三)实现sql分页

        上文的例子,在编写的过程中,需要注意以下几点:

  1. 获取总页数的时候,由于得到的可能是小数,所以要用向上取整的函数ceiling;
  2. 由于两个整数相除得到的也是整数,所以应该将其中一个乘以1.0;
  3. 实现分页要用到row_number函数,对表进行重新排序,然后在进行分页。这种做法更可靠。
  4. 如果想做的更通用,可以在增加一个输入参数,这个参数用来传递表名,这样就可以对任意表进行分页了。