Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将SQL查询类型转换为Python类型_Python_Mysql_Pandas_Sqlalchemy_Amazon Redshift - Fatal编程技术网

将SQL查询类型转换为Python类型

将SQL查询类型转换为Python类型,python,mysql,pandas,sqlalchemy,amazon-redshift,Python,Mysql,Pandas,Sqlalchemy,Amazon Redshift,我想将使用create\u engine运行的SQL查询结果的数据类型从SQLAlchemy转换为Python对象,将其保存为CSV,然后加载到另一个SQL数据库,该数据库可能使用不同的方言。由于我必须处理可能返回大量行的查询,因此数据可能以块的形式加载,在某些情况下,由Pandas等工具创建的autommatic类型定义是不合适的(例如:第一个块的所有行都有None作为值,但下一个块有整数文本,另一个块只有字符串……但实际上它们只有字符串) 我尝试使用SQLAlchemy.inspect,但它

我想将使用
create\u engine
运行的SQL查询结果的数据类型从SQLAlchemy转换为Python对象,将其保存为CSV,然后加载到另一个SQL数据库,该数据库可能使用不同的方言。由于我必须处理可能返回大量行的查询,因此数据可能以块的形式加载,在某些情况下,由Pandas等工具创建的autommatic类型定义是不合适的(例如:第一个块的所有行都有
None
作为值,但下一个块有整数文本,另一个块只有字符串……但实际上它们只有字符串)

我尝试使用
SQLAlchemy.inspect
,但它仅适用于表,而不适用于具有联接的查询结果,例如:

选择users.id,将(*)计算为用户订单总数,将总和(orders.price)计算为终身价值
来自用户
内部联接顺序
ON orders.user_id=users.id
按订单分组。id
在这种情况下,我希望能够访问
user\u id
(SQL:
INT
,Python:
INT
)和
total\u users\u orders
(SQL:
INT
,Python:
INT
)和
life\u value
(SQL:
FLOAT
,Python:
FLOAT

有没有办法获取此查询返回的行的数据类型,然后映射到python类型,而不依赖于自动推断