SQL分页的写法有哪些

sql
970
2023/8/22 12:52:45
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

SQL分页的写法主要有两种:使用LIMIT和OFFSET关键字,以及使用ROW_NUMBER()函数。

  1. 使用LIMIT和OFFSET关键字:
SELECT * FROM 表名 LIMIT 每页记录数 OFFSET 起始位置;

其中,每页记录数表示每页显示的记录数量,起始位置表示从第几条记录开始显示。例如,如果要显示第2页,每页显示10条记录,可以使用以下语句:

SELECT * FROM 表名 LIMIT 10 OFFSET 10;
  1. 使用ROW_NUMBER()函数:
SELECT *
FROM (
SELECT ROW_NUMBER() OVER (ORDER BY 排序字段) AS RowNum, *
FROM 表名
) AS temp
WHERE RowNum > 起始位置 AND RowNum <= (起始位置 + 每页记录数);

其中,排序字段表示按照哪个字段进行排序,起始位置表示从第几条记录开始显示,每页记录数表示每页显示的记录数量。例如,如果要显示第2页,每页显示10条记录,可以使用以下语句:

SELECT *
FROM (
SELECT ROW_NUMBER() OVER (ORDER BY 排序字段) AS RowNum, *
FROM 表名
) AS temp
WHERE RowNum > 10 AND RowNum <= 20;

这两种写法可以根据需要选择使用,使用LIMIT和OFFSET关键字的写法简单直观,但在处理大数据量时可能性能较差;而使用ROW_NUMBER()函数的写法相对复杂,但在处理大数据量时性能较好。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: sql blob类型的性能表现如何