sql 查询语句 带分页和总数
时间: 2023-07-06 13:36:40 浏览: 163
利用SQL语句实现分页查询
好的,以下是一个带分页和总数查询的 SQL 查询语句:
```
SELECT COUNT(*) AS total_count FROM table_name;
SELECT * FROM table_name
ORDER BY column_name
OFFSET (@page_num - 1) * @page_size ROWS
FETCH NEXT @page_size ROWS ONLY;
```
其中,@page_num 和 @page_size 变量分别指定当前页码和每页显示的行数。total_count 列将返回表中总行数。
这个 SQL 查询语句会先查询表中总行数,然后根据 @page_num 和 @page_size 变量进行分页查询。需要注意的是,ORDER BY 子句用于指定按照哪个列排序。
你可以将这两个 SQL 查询语句组合在一起,使用 UNION ALL 操作符连接它们。例如:
```
DECLARE @page_num INT = 2;
DECLARE @page_size INT = 10;
SELECT COUNT(*) AS total_count FROM table_name;
SELECT * FROM table_name
ORDER BY column_name
OFFSET (@page_num - 1) * @page_size ROWS
FETCH NEXT @page_size ROWS ONLY;
```
这个 SQL 查询语句将返回一个包含两个结果集的查询结果,第一个结果集包含表中总行数,第二个结果集包含当前页的数据。
阅读全文