【发布时间】:2019-09-16 11:40:49
【问题描述】:
我正在尝试使用以下代码在数据框中导入包含 81462 行的表:
sql_conn = pyodbc.connect('DRIVER={SQL Server}; SERVER=server.database.windows.net; DATABASE=server_dev; uid=user; pwd=pw')
query = "select * from product inner join brand on Product.BrandId = Brand.BrandId"
df = pd.read_sql(query, sql_conn)
而且整个过程需要很长时间。我想我已经 30 分钟了,它仍在处理中。我认为这不太正常 - 那么我应该如何导入它以便处理时间更快?
【问题讨论】:
-
尝试导入一小部分数据并检查连接是否正常
-
已经做到了。使用 200 可以正常工作,几乎可以立即导入。
-
FETCH NEXT 10000怎么样? -
添加
chunksize -
@VikasP 即使我添加
for chunk in pd.read_sql(query, sql_conn, chunksize=500): df=chunk仍然需要很多时间。