python sql limit 分页
时间: 2023-07-09 18:04:19 浏览: 229
在 SQL 中,可以使用 LIMIT 子句对查询结果进行分页,限制返回结果的行数。
例如,如果要返回前 10 行记录,可以使用以下语句:
```sql
SELECT * FROM table_name LIMIT 10;
```
如果要返回从第 11 行开始的 10 行记录,可以使用以下语句:
```sql
SELECT * FROM table_name LIMIT 10 OFFSET 10;
```
其中,OFFSET 子句用于指定偏移量,表示从第几行开始返回结果。
在 Python 中,可以使用数据库 API(如 pymysql、sqlite3 等)执行 SQL 查询,然后获取返回结果。以下是一个使用 pymysql 模块进行分页查询的示例:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='test')
# 创建游标
cur = conn.cursor()
# 查询前 10 行记录
cur.execute('SELECT * FROM table_name LIMIT 10')
# 获取查询结果
results = cur.fetchall()
# 输出结果
for row in results:
print(row)
# 查询从第 11 行开始的 10 行记录
cur.execute('SELECT * FROM table_name LIMIT 10 OFFSET 10')
# 获取查询结果
results = cur.fetchall()
# 输出结果
for row in results:
print(row)
# 关闭游标和连接
cur.close()
conn.close()
```
注意,在实际应用中,应该根据需要对 SQL 查询进行参数化处理,以避免 SQL 注入等安全问题。
阅读全文