使用 read_sql 分块处理空结果

我仍在学习 Python,我需要处理 sql 查询不提供任何行的情况,使用带有 chunksize 参数的 Pandas read_sql 函数。


这是当前行:


df = pd.concat([x for x in pd.read_sql(SQL_request,self.connection, chunksize=50000)], ignore_index=True)

当查询返回零行时,我收到此错误:


  File "[....]\lib\site-packages\pandas\core\reshape\concat.py", line 239, in __init__

    raise ValueError('No objects to concatenate')

ValueError: No objects to concatenate

处理这个问题的最佳方法是什么?即使没有行(列必须在那里),我也需要返回一个空的数据框。我需要保持分块,这真的有助于不使用太多内存。


我想过在没有分块的情况下运行第一个查询并检查是否有任何行,然后运行第二个分块查询。但我觉得这是一个非常糟糕和低效的想法。


HUH函数
浏览 408回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python