您可以DISTINCT ON ... ORDERBY
,其中n等于1,因为您的表不是 很大 :
players_with_score = db.session.query(Player, score).\
join(score).\
distinct(Player.id).\
order_by(Player.id, score.timestamp.desc())
由于score.timestamp
不可为空,因此您不必担心降序和NULL。
SQLAlchemy:如果联接返回多个结果,则仅显示最新结果
您可以DISTINCT ON ... ORDERBY
,其中n等于1,因为您的表不是 很大 :
players_with_score = db.session.query(Player, score).\
join(score).\
distinct(Player.id).\
order_by(Player.id, score.timestamp.desc())
由于score.timestamp
不可为空,因此您不必担心降序和NULL。