如何从 Python MySQL 中的某个指定行号开始从表中检索特定数量的记录?
大多数情况下,我们不需要从表中选择所有行。我们有时可能需要从表中检索特定数量的记录,从某个特定索引开始。假设,我们有一个包含10条记录的表。我们需要从3日开始在表中选择5行第三排。
这是使用LIMIT和OFFSET子句以及SELECT语句完成的。LIMIT用于指定要检索的行数。OFFSET用于指定要从中获取行的起始位置。如果你想获取从3开始数据RD行,偏移量必须为2。
语法
SELECT * FROM table_name LIMIT no_of_rows OFFSET starting index of row
在python中使用MySQL从表中选择特定记录的步骤
导入MySQL连接器
使用连接器建立连接connect()
使用cursor()方法创建游标对象
使用适当的mysql语句创建查询
使用execute()方法执行SQL查询
关闭连接
假设我们有下表名为“学生”-
+----------+---------+-----------+------------+ | Name | Class | City | Marks | +----------+---------+-----------+------------+ | Karan | 4 | Amritsar | 95 | | Sahil | 6 | Amritsar | 93 | | Kriti | 3 | Batala | 88 | | Khushi | 9 | Delhi | 90 | | Kirat | 5 | Delhi | 85 | +----------+---------+-----------+------------+
示例
假设我们想选择3行从2日开始第二排。
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()
上面的代码取和打印3个记录从2次行。
输出结果
(‘Sahil’ , 6 , ‘Amritsar’ ,93) (‘Kriti’ , 3 , ‘Batala’ ,88) (‘Amit’ , 9 , ‘Delhi’ , 90)