无法从具有空格的列名称读取Redshift中的数据

问题描述 投票:1回答:1

目前我面临的一个问题是从redshift连接中将数据读入Python。我能够从Python连接到redshift服务器,并且还能够获取数据。

将过滤器应用于其间具有“空格”的列名称时出现问题。我尝试了几种组合来通过查询获取过滤后的数据,但没有结果。

这是我用来将Python连接到redshift服务器的代码片段。

import pandas as pd
import psycopg2
con = psycopg2.connect(dbname= 'dbname', host='hostname', port= 'portnumber', 
                                     user= 'username', password= 'password')
query = "select * from schema.table_name WHERE schema.table_name.part number='123456'
df = pd.read_sql(query, con)

在上面的代码中,我想仅获取“部件号”=“123456”的数据。但由于两者之间的空间,我得到了错误。我也尝试了[部件号],'部件号',{部件号},(部件号)等组合。

需要您的支持才能找到解决此问题的方法。

python python-3.x postgresql amazon-redshift psycopg2
1个回答
0
投票

尝试

query = "select * from schema.table_name WHERE schema.table_name.\"part number\"='123456';"

要不就

query = "select * from schema.table_name WHERE \"part number\"='123456';"
© www.soinside.com 2019 - 2024. All rights reserved.