J'ai la requête suivante:Existe-t-il un moyen de LIMITER les résultats par groupe de résultats dans MySQL?
SELECT title, karma, DATE(date_uploaded) as d
FROM image
ORDER BY d DESC, karma DESC
Cela me donnera une liste d'enregistrements d'images, d'abord trié par jour récent, puis par la plupart karma.
Il manque juste une chose: je veux seulement obtenir les images x avec le karma le plus élevé par jour. Par exemple, par jour, je veux seulement les 10 images les plus karma. Je pourrais bien sûr lancer plusieurs requêtes, une par jour, puis combiner les résultats. Je me demandais s'il y a un moyen plus intelligent qui fonctionne encore bien. Je suppose que ce que je cherche est une façon d'utiliser LIMIT x, y par groupe de résultats?
Merci beaucoup pour l'effort considérable. J'ai quelques soucis au sujet de la performance mais le testerai, je peux avoir besoin de cacher la sortie quand même :) – Ferdy
@Ferdy: Pour améliorer la performance de cette requête, ajoutez un index combiné sur '(date_uploaded, karma)'. –