python - pandas.read_sql_query - 如果列名和搜索值都包含空格,如何正确编写 WHERE 条件
问题描述
我这样写SQL查询
df = pd.read_sql_query('SELECT * FROM hr_dataset WHERE "Performance Score" = "Needs Improvement";', conn)
hr_dataset - table
Performance Score - column
Needs Improvement - searched value
列名和搜索值都包含一个空格,这就是我必须使用引号的原因,但此查询结果出错。
**DatabaseError**: Execution failed on sql 'SELECT * FROM hr_dataset WHERE "Performance Score" = "Needs Improvement";': column "Needs Improvement" does not exist
LINE 1: ...ECT * FROM hr_dataset WHERE "Performance Score" = "Needs Imp...
我应该如何正确编写这样的查询?
解决方案
请使用以下查询,在双引号中提到“需要改进”,其中数据库将其视为列名
SELECT * FROM hr_dataset WHERE Performance Score = 'Needs Improvement';
推荐阅读
- python - Matplotlib 仅在身体上注释虚线花式箭头,而不是头部
- google-bigquery - Bigquery - 如何抽象重复的逻辑
- node.js - 处理 HTTP GET 请求时,如何读取有效负载?
- oracle - 尝试在 Oracle db 中创建 Generate_Series 函数
- c# - 如何使用 C# 将 xsi:type 作为 XML 属性添加到已经具有属性的标记
- python - ValueError:预期的 2D 数组,在拟合模型时得到 1D 数组
- cors - 带有远程 Swagger-UI / CORS 错误的 Micronaut
- python - TypeError:“WebElement”对象不可下标
- sql - 查明是否从探查器中使用了 sql 视图
- java - RecyclerView 中的 admob 原生广告与 firebase 数据库集成