簡體   English   中英

在SQLAlchemy中,如何返回ResultProxy而不是列表?

[英]In SQLAlchemy, how do I return a ResultProxy instead of a list?

我在SQLAlchemy中有一個非常簡單的查詢,可以正常工作,例如:

query = session.query(MyModel)
query = query.filter(MyModel.col1 == 'foo')
# .. additional filters here...
result = query.limit(50).all()

這將返回類型list的結果-如何在不使用session.execute()返回ResultProxy對象而不是? 我正在使用query()方法來構造具有可選過濾器參數的動態查詢,但是ResultProxy對象具有一些我想使用的屬性(例如rowcount )。

SQLAlchemy最令人困惑的事情之一可能是查詢方法與其execute方法之間的差異。 有人可以舉個例子來幫助解決這個問題嗎?

啊,這比我想的要簡單:只需使用session.execute(query)

query = query.limit(50).offset(0)
result_proxy = session.execute(query)
print(result_proxy.rowcount)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM