query.all()将Dataframe或不带for循环的列表

23c0lvtd  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(366)

我正在尝试从sqlalchemy中的query.all()函数中获取作为列表或Dataframe的行。

users = session.query(User).filter_by(name='steve').all();

结果显示为模型对象数组。我需要将值和列显示为:

id|name|age

所有其他解决方案都建议对结果执行for循环并提取每个值(这毫无意义)。
我用的是python3.6

Class User(Base):
    __tablename__ = 'users'

    id = Column(Integer, primary_key=True)
    name = Column(Integer)
    age = Column(Integer);
ee7vknir

ee7vknir1#

结果代码为:

users = session.query(User); #Query object
statement = users.statement;#Getting the statment
df = pd.read_sql(statement,db.engine);#binding it to a dataframe

相关问题