Pandas 无法阅读 SQL headers - Python
Pandas unable to read SQL headers - Python
我正在使用 pyodbc driver 并尝试读取 sql 服务器数据库。生成的数据框具有空列 headers,如下所示
我已将一些字段转换为日期/日期时间类型,这些更改似乎在没有相应 headers
的情况下可见
当 SELECT 语句中包含裸列名称时,其名称会自动用于结果集中:
1> SELECT create_date FROM sys.tables WHERE name='team';
2> go
create_date
-----------------------
2021-01-02 11:06:23.763
(1 rows affected)
但是,如果该列是表达式的结果,那么大多数数据库引擎不会 return 列名……
1> SELECT create_date, CAST(create_date AS date) FROM sys.tables WHERE name='team';
2> go
create_date
----------------------- ----------------
2021-01-02 11:06:23.763 2021-01-02
(1 rows affected)
…除非我们使用 AS:
明确提供它
1> SELECT create_date, CAST(create_date AS date) AS date_only FROM sys.tables WHERE name='team';
2> go
create_date date_only
----------------------- ----------------
2021-01-02 11:06:23.763 2021-01-02
(1 rows affected)
我正在使用 pyodbc driver 并尝试读取 sql 服务器数据库。生成的数据框具有空列 headers,如下所示
我已将一些字段转换为日期/日期时间类型,这些更改似乎在没有相应 headers
的情况下可见当 SELECT 语句中包含裸列名称时,其名称会自动用于结果集中:
1> SELECT create_date FROM sys.tables WHERE name='team';
2> go
create_date
-----------------------
2021-01-02 11:06:23.763
(1 rows affected)
但是,如果该列是表达式的结果,那么大多数数据库引擎不会 return 列名……
1> SELECT create_date, CAST(create_date AS date) FROM sys.tables WHERE name='team';
2> go
create_date
----------------------- ----------------
2021-01-02 11:06:23.763 2021-01-02
(1 rows affected)
…除非我们使用 AS:
明确提供它1> SELECT create_date, CAST(create_date AS date) AS date_only FROM sys.tables WHERE name='team';
2> go
create_date date_only
----------------------- ----------------
2021-01-02 11:06:23.763 2021-01-02
(1 rows affected)