我尝试使用pyodbc打印前10行。我知道如何使用以下内容获取第一条记录:
row = cursor.fetchall()
我尝试将其更改为:
row = cursor.fetchten()
但这没有用。还有什么我可以做的吗?
答案 0 :(得分:6)
您插入:
row = cursor.fetchmany(10)
您可以将括号中的数字更改为您想要的任何内容。
答案 1 :(得分:4)
根据找到的文档on this page,您有两个返回列表的选项。您拥有fetchall()
方法和fetchmany()
方法。在任何一种情况下,您都会返回要使用的行列表。
关于fetchall()
方法以及zondo所说的内容,以下方法可以快速有效地工作:
rows = cursor.fetchall()[:10] # to get the first 10
rows = cursor.fetchall()[-10::1] # to get the last 10
或者,您可以根据需要循环遍历行,以获得所需的结果:
rows = cursor.fetchall()
for idx in range(10): #[0, 1, ..., 9,]
print(rows[idx]) # to get the first 10
print(rows[(len(ray)-idx)]) # to get the last 10
同一文档中还有fetchmany()
方法,定义如下:cursor.fetchmany([size=cursor.arraysize]) --> list
括号表示可选参数,因此您无需包含大小。但是因为你想要10,你将把10传递给size参数。例如:
rows = cursor.fetchmany(size=10)
for row in rows:
print(row)