SQL 分页的查询语句
时间: 2024-10-22 14:06:00 浏览: 9
二种sql分页查询语句分享
在 SQL 中,分页查询通常涉及到 `LIMIT` 和 `OFFSET` 关键字的使用。这两个关键字允许你在结果集中指定要返回的特定部分。`LIMIT` 用于限制返回的记录数,而 `OFFSET` 则表示从哪一行开始返回。
以下是一个基本的示例,假设我们有一个名为 `users` 的表,我们要获取第 11 到第 20 条用户信息(每页 10 条):
```sql
SELECT *
FROM users
LIMIT 10 OFFSET (10 * 1); -- 注意这里,OFFSET 是基于每页的数量乘以当前页码
```
在这个例子中,`OFFSET (10 * 1)` 表示跳过前面的 10 行(因为每页 10 条),然后取接下来的 10 条。
如果你正在使用 MySQL,还可以使用 `ROW_NUMBER()` 函数结合 `LIMIT` 实现分页,这样可以避免计算偏移量:
```sql
WITH pagination AS (
SELECT ROW_NUMBER() OVER (ORDER BY id) as row_num,
* FROM users
)
SELECT *
FROM pagination
WHERE row_num BETWEEN 11 AND 20;
```
阅读全文