Bonjour tout le monde.
Longue vie à Kirk Douglas et à Robert Marchand, entre autre.
Mais surtout bonne année 2017 au plus grand nombre!
Voilà, je souhaite factoriser mon code.
Actuellement j'ai plusieurs requêtes qui fonctionnent très bien.
Mais il s'agit de plusieurs requêtes, là où il pourrait en y avoir qu'une...
Ce qui implique un certain nombre d'actions et de contrôles en PHP en amont.
Bref, venons-en à mon problème par l'exemple:
J'ai plusieurs tables, dont une table 'te_produits_pro' que voici.
Voilà en bon français la requête voulue:
Code : Sélectionner tout - Visualiser dans une fenêtre à part PRO_ID|PRO_LABEL|PRO_CATEGORIE_ID|PRO_NB_VOTES
"Je selectionnne dans chacunes des catégories exisantes les 5 produits ayant reçus le plus de votes."
Pour simplifier, actuellement je fais ça:
En PHP, je récupère N catégories, puis dans une boucle j'execute cette requête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 'SELECT * FROM te_produits_pro WHERE pro_categorie_id=$i ORDER BY pro_nb_votes LIMIT 5'
C'est fonctionnel, mais c'est une béquille.
Alors j'ai essayé d'autres choses, dont entre autre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 'SELECT * FROM te_produits_pro ORDER BY pro_cat_id, pro_nb_votes DESC '
Seulement comment limiter le résultat au 5 premiers de chaque catégorie?
Merci à vous.
Partager