我正在使用SQLAlchemy查询,根据User
表在另一个表中的总得分来排序,以显示记分板,并带有以下查询:
session.query(User, func.sum(Question.points)).join(Answer, User.id == Answer.user_id).join(Question, Answer.Question_id == Question.id).group_by(User.id).order_by(func.sum(Question.points).desc()).all()
我以下列方式返回数据:
<User object 1> 500
<User object 2> 300
<User object 3> 100
然后,我对python
中返回的数据进行“后处理”以添加其排名:
1 <User object 1> 500
2 <User object 2> 300
3 <User object 3> 100
是否有一种方法可以将排名包含在SQLAlchemy返回的响应中,而无需执行额外的后处理步骤?