【发布时间】:2020-06-11 18:33:21
【问题描述】:
我正在尝试对列名 solar+ 下的一些数据进行 spearman 关联。但是,当尝试使用 select 语句从 egauge13830 表中选择所需的行数时,加号被视为运算符并导致错误。这些是我尝试过的 2 个语句及其结果:
1)
sql1 = """
SELECT solar+
FROM egauge13830
WHERE tstamp < 1434870960
"""
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.SyntaxError) 在“FROM”或附近出现语法错误
第 3 行:来自 egauge13830
^
2)
sql1 = """
SELECT 'solar+'
FROM egauge13830
WHERE tstamp < 1434870960
"""
df1 = pd.read_sql_query(sql1, engine)
print(df1.head())
0 solar+
1 solar+
2 solar+
3 solar+
4 solar+
我也尝试过更改此列的名称,但找不到不涉及 select 语句的方法,使用它会导致与上述完全相同的问题。
那么,我可以在 select 语句中添加一些内容以使其运行或以其他方式更改列名吗?
感谢所有帮助。
【问题讨论】:
-
使用双引号。这是 Postgres 中“坏”标识符的转义字符。
标签: sql postgresql select