如何使用python从sqlserver创建一个超过700mb的数据帧

2024-04-26 00:38:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个超过700MB的SQL表,每天都在增加,我必须写一个TXT文件和SFTP它

下面的代码将暂停

for df in pd.read_sql(query, conn, chunksize=1000000)

有没有其他方法可以把结果拼凑起来,顺利发送出去


Tags: 文件方法代码intxtdfforread
1条回答
网友
1楼 · 发布于 2024-04-26 00:38:23

你的代码没有任何意义,因为你没有给任何东西分配pd.read_sql

尝试:

chunk_size = 50000
dfs = []
for chunk in pd.read_sql("query",con=engine,chunksize=chunk_size)
    #transformation 
    dfs.append(chunk)

然后,您可以合并数据帧并将其保存到一个带有gzip压缩的txt文件中,因为数据帧是v.large

final_df = pd.concat(dfs)
final_df.to_csv('file.txt.gz',index=False,compression='gzip')

相关问题 更多 >