J'ai actuellement la requête suivanteRuby on Rails de requête Aide
User.sum(:experience, :group => "clan", :conditions => ["created_at >= ? and created_at <= ?", "2010-02-15", "2010-02-16"])
Je veux retourner les 50 premiers clans en termes d'expérience énumérés plus de l'expérience au moins une expérience avec seulement le top 50 dans l'expérience de retour. Comment est-ce que je modifierais la requête pour atteindre ce résultat. Je sais que j'ai besoin de: limite => 50 pour limiter la requête mais si j'ajoute: order => "clan DESC" je reçois la colonne error "users.experience" qui doit apparaître dans la clause GROUP BY ou être utilisée dans un agrégat fonction
sur la base de cette requête ActiveRecord, il semble que vous l'agrégation aux utilisateurs de trouver l'expérience totale de chaque clan commandé par le plus expérimenté au moins. Est-ce exact? Il peut être utile d'indiquer exactement ce que vous entendez par "résultats" - si vous voulez des utilisateurs, la méthode de somme n'est pas ce que vous voulez. –
tomtoday - c'est correct et j'ai mis à jour la question originale pour refléter cela. Que dois-je utiliser pour remplacer .sum? – Splashlin