【发布时间】:2019-05-21 22:24:14
【问题描述】:
我正在使用 Python(Jupyter Notebook) 和 Postgres 数据库,并且正在努力填充 Pandas 数据框。
使用 pgAdmin4 中的查询生成器可以正常运行 sql 代码
SELECT "Date","Close" FROM test WHERE "Symbol" = 'AA'
但是我无法在我的 Jupyter 笔记本中使用它,我认为它与单引号和双引号有关,但不知道要更改什么并且碰壁了。在我正在尝试的笔记本中
df = pd.read_sql_query('SELECT "Date","Close" FROM public.test WHERE "Symbol" = AA', conn)
但不知道在查询的 AA(数据)部分周围使用什么引号,如果我使用双引号,pandas 认为 AA 是一列,如果我使用单引号,它会破坏字符串。
如果有人能指出我正确的方向,我将不胜感激。
谢谢
【问题讨论】:
-
猜一猜:去掉字段名的引号。
df = pd.read_sql_query('SELECT Date, Close FROM public.test WHERE Symbol = AA', conn) -
您是否尝试将查询作为
raw string传递? -
应该这样做:df = pd.read_sql_query("SELECT [Date], [Close] FROM public.test WHERE Symbol = 'AA'", conn)。您需要将单引号与双引号结合起来。让我知道它是否有效。
标签: python sql postgresql pandas quotes