Python 如何使用sqlalchemy生成值列表而不创建对象?

Python 如何使用sqlalchemy生成值列表而不创建对象?,python,sqlalchemy,Python,Sqlalchemy,我有以下代码: things = Thing.query.filter_by(user_id=user_id).all() 然后,我迭代东西,只使用东西.id,因此我可以通过只请求每行的id来提高效率: things = Thing.query.with_entities(Thing.id).filter_by(user_id=user_id).all() 为了更高效,我不想首先在内存中创建对象。在rails中,这将通过以下方式完成。sqlalchemy有什么等价物吗?与实体相当于弹拨。它发

我有以下代码:

things = Thing.query.filter_by(user_id=user_id).all()
然后,我迭代
东西
,只使用
东西.id
,因此我可以通过只请求每行的
id
来提高效率:

things = Thing.query.with_entities(Thing.id).filter_by(user_id=user_id).all()

为了更高效,我不想首先在内存中创建
对象。在rails中,这将通过以下方式完成。sqlalchemy有什么等价物吗?

与实体
相当于
弹拨
。它发出
SELECT id FROM thing WHERE user\u id=…
,而不是
SELECT*FROM thing WHERE user\u id=…
。然后返回列表列表?或者一个
事物的列表
s?它会给你一个整数列表。哎呀,你完全正确。它实际上是一个元组列表。不,它不是。据我所知不是这样。这有点烦人,但不会有太大的性能损失。