pandas read_sql 将列名转换为小写 - 有解决方法吗?
问题:pandas read_sql 将列名转换为小写 - 有解决方法吗? 相关:pandas read_sql 在列名中删除点 我使用 pandas.read_sql 从 postgres 数据库的 sql 查询创建数据框。一些列别名\名称使用混合大小写,我希望它传播到数据框。但是,pandas(或下划线引擎——据我所知,SQLAlchemy)只返回小写的字段名称。 有解决方法吗? (除了使用查
·
问题:pandas read_sql 将列名转换为小写 - 有解决方法吗?
相关:pandas read_sql 在列名中删除点
我使用 pandas.read_sql 从 postgres 数据库的 sql 查询创建数据框。一些列别名\名称使用混合大小写,我希望它传播到数据框。但是,pandas(或下划线引擎——据我所知,SQLAlchemy)只返回小写的字段名称。
有解决方法吗? (除了使用查找表并在之后修复值)
解答
Postgres 将不带引号的列名标准化为小写。如果你有这样的表:
create table foo ("Id" integer, "PointInTime" timestamp);
PostgreSQL 将遵守这种情况,但您将必须指定引用的表名:
select "Id", "PointInTime" from foo;
更好的解决方案是添加列别名,例如:
select name as "Name", value as "Value" from parameters;
Postgres 将返回正确大小写的列名。如果问题是 SQLAlchemy 或 pandas,那么这还不够。
更多推荐
已为社区贡献19912条内容
所有评论(0)