SQLAlchemy-Filterabfrage nach verwandtem Objekt

VerwendenSQLAlchemyIch habe eine Eins-zu-Viele-Beziehung mit zwei Tabellen - Benutzer und Punktzahlen. Ich versuche, die Top-10-Benutzer abzufragen, die in den letzten X Tagen nach ihrer Gesamtpunktzahl sortiert wurden.

users:  
  id  
  user_name  
  score  

scores:  
  user   
  score_amount  
  created  

Meine aktuelle Anfrage lautet:

 top_users = DBSession.query(User).options(eagerload('scores')).filter_by(User.scores.created > somedate).order_by(func.sum(User.scores).desc()).all()  

Ich weiß, dass dies eindeutig nicht richtig ist, es ist nur meine beste Vermutung. Nachdem ich mir die Dokumentation angesehen und gegoogelt habe, kann ich keine Antwort finden.

EDIT: Vielleicht würde es helfen, wenn ich was zum skizzieren würdeMySQL Abfrage würde so aussehen:

SELECT user.*, SUM(scores.amount) as score_increase 
FROM user LEFT JOIN scores ON scores.user_id = user.user_id 
WITH scores.created_at > someday 
ORDER BY score_increase DESC

Antworten auf die Frage(3)

Ihre Antwort auf die Frage