如何在 Python MySQL 中从表中从指定行号开始检索特定数量的记录?
pythonserver side programmingprogramming
通常,我们不需要从表中选择所有行。有时我们可能需要从表中从某个特定索引开始检索特定数量的记录。假设我们有一个包含 10 条记录的表。我们需要从表中从第 3 行开始选择 5 行。
这是使用 LIMIT 和 OFFSET 子句以及 SELECT 语句完成的。LIMIT 用于指定要检索的行数。OFFSET 用于指定要从中获取行的起始位置。如果要从第 3 行开始获取数据,OFFSET 必须为 2。
语法
SELECT * FROM table_name LIMIT no_of_rows OFFSET 行起始索引
使用 MySQL 在 python 中从表中选择特定记录所涉及的步骤
导入 MySQL 连接器
使用 connect() 与连接器建立连接
使用 cursor() 方法创建游标对象
使用适当的 mysql 语句创建查询
使用 execute() 方法执行 SQL 查询
关闭连接
假设我们有以下名为的表“Students” −
+----------+---------+-----------+------------+ | Name | Class | City | Marks | +----------+---------+-----------+------------+ | Karan | 4 | Amritsar | 95 | | Sahil | 6 | Amritsar | 93 | | Kriti | 3 | Batala | 88 | | Khushi | 9 | Delhi | 90 | | Kirat | 5 | Delhi | 85 | +----------+---------+-----------+------------+
示例
假设我们想从第二行开始选择三行。
import mysql.connector db=mysql.connector.connect(host="your host", user="your username", password="your password",database="database_name") cursor=db.cursor() query="SELECT * FROM Students LIMIT 3 OFFSET 1" cursor.execute(query) for row in cursor: print(row) db.close()
上述代码从第二行开始获取并打印三条记录。
输出
(‘Sahil’ , 6 , ‘Amritsar’ ,93) (‘Kriti’ , 3 , ‘Batala’ ,88) (‘Amit’ , 9 , ‘Delhi’ , 90)