我仍在学习 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
处理这个问题的最佳方法是什么?即使没有行(列必须在那里),我也需要返回一个空的数据框。我需要保持分块,这真的有助于不使用太多内存。
我想过在没有分块的情况下运行第一个查询并检查是否有任何行,然后运行第二个分块查询。但我觉得这是一个非常糟糕和低效的想法。
相关分类