如何在熊猫中将sql查询结果保存到csv

Posted

技术标签:

【中文标题】如何在熊猫中将sql查询结果保存到csv【英文标题】:how to save sql query result to csv in pandas 【发布时间】:2021-07-31 13:45:31 【问题描述】:

我在数据框中写了一个查询,想把它保存在 CSV 文件中 我尝试了这段代码,但没有工作

q1 = "SELECT * FROM  df1 join df2 on df1.Date = df2.Date" 
df = pd.read_sql(q1,None)
df.to_csv('data.csv',index=False)

【问题讨论】:

df.to_csv('data.csv',index=False) 而不是q1 不工作,我在@DeanTaler 的帖子中编辑了它 有错误提示吗? AttributeError: 'NoneType' 对象没有属性 'cursor',这是错误消息@SAL 你的连接在哪里?您需要指定 con 参数。 【参考方案1】:

你可以试试下面的代码:

import pandas as pd

df1 = pd.read_csv("Insert file path")
df2 = pd.read_csv("Insert file path")

df1['Date'] = pd.to_datetime(df1['Date'] ,errors = 'coerce',format = '%Y-%m-%d')
df2['Date'] = pd.to_datetime(df2['Date'] ,errors = 'coerce',format = '%Y-%m-%d')

df = df1.merge(df2,how='inner', on ='Date')
df.to_csv('data.csv',index=False)

这应该可以解决您的问题。

【讨论】:

给我这个错误ValueError:“你正在尝试合并对象和datetime64 [ns]列。如果你想继续,你应该使用pd.concat”,我也试图联系数据框架并没有工作,只有工作的方式是写SQL 我已经更新了代码。你现在可以检查吗? 不工作并给我这个消息“AttributeError: Can only use .dt accessor with datetimelike values”@SAL df1['Date'] = pd.to_datetime(df1['Date'] ,errors = 'coerce',format = '%Y-%m-%d') df2['Date' ] = pd.to_datetime(df2['Date'] ,errors = 'coerce',format = '%Y-%m-%d') df = df1.merge(df2,how='inner', on ='Date ') df.to_csv('data.csv',index=False) @SAL 这段代码运行成功,谢谢

以上是关于如何在熊猫中将sql查询结果保存到csv的主要内容,如果未能解决你的问题,请参考以下文章

如何在循环中将结果导出到 CSV

如何在 C# Asp.net 中将 SELECT sql 查询结果保存在数组中

如何在python中将文本字符串列表转换为熊猫数据框?

将 MySQL 查询结果保存到 CSV 文件

如何在SSRS中将报告导出到.CSV?

如何将SQL server 2008 里的查询结果导出到 Excel 表内?