PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Enregistrements distincts avec jointures et ordre

Essayez ceci :

User.select('users.*,MAX(donations.created_at) as most_recent_donation').
  joins(:donations).order('most_recent_donation desc').group('users.id')

Je suppose qu'un utilisateur a de nombreux dons, cela sélectionnerait le don créé le plus récent et sélectionnerait des utilisateurs distincts en filtrant par leur identifiant.

Je n'ai pas testé cela cependant.