【发布时间】:2016-06-20 21:02:48
【问题描述】:
我正在通过 pandas 的 read_sql 和外部应用程序 (DbVisualizer) 运行完全相同的查询。
DbVisualizer 返回 206 行,而 pandas 返回 178。
我已经尝试根据How to create a large pandas dataframe from an sql query without running out of memory?提供的信息通过chucks从pandas读取数据,但没有改变。
这可能是什么原因以及解决方法?
查询:
select *
from rainy_days
where year=’2010’ and day=‘weekend’
这些列包含:日期、年份、工作日、当天的降雨量、温度、geo_location(每个位置的行)、风力测量值、前一天的降雨量等。
确切的python代码(减去连接细节)是:
import pandas
from sqlalchemy import create_engine
engine = create_engine(
'postgresql://user:pass@server.com/weatherhist?port=5439',
)
query = """
select *
from rainy_days
where year=’2010’ and day=‘weekend’
"""
df = pandas.read_sql(query, con=engine)
【问题讨论】:
-
你使用了奇怪的引号(对于
year=’2010’),我不知道这是否是一个原因,但你可以用普通的单引号替换它们吗? (') -
有解决办法吗?我正在运行同样的问题。
-
同样的问题。我有一个总共 7 行的表,pandas.read_sql_table 有 7 行,但 pandas.read_sql 有 5 行。
标签: pandas sqlalchemy