总之,我对一个SQLA请求有问题;目标是返回一个counter列中具有最大值的记录:
此操作正常-返回正确的记录:
m=12 # arbitrary example of a max value of counter = 12
qry = session.query(Data).
filter(Data.user_id == user_id,Data.counter == m)
下面的代码不起作用-返回None
:
from sqlalchemy import func
qry = session.query(Data).
filter(Data.user_id == user_id,
Data.counter == func.max(Data.counter).select())
请注意,具有最大值的记录(如果相关的话)不会超过一条。
当然,有一种方法可以返回在其中一列中具有最大值的记录。有什么想法吗?
听起来你可以简单地按计数器的降序排序,得到第一个结果。。。
但是,如果您关心对大型数据集进行排序,则可以使用子查询。。。
从本质上讲,
qry
应该是。。。相关问题 更多 >
编程相关推荐