Hé, j'ai un problème avec une requête SQL. Permet de prendre cet exemple les donnéesSQL: Utilisation de GROUP BY et MAX sur plusieurs colonnes
itemID catID attrib1 attrib2
1 1 10 5
2 1 10 7
3 1 5 10
4 2 18 15
Je veux revenir le meilleur élément pour chaque catégorie (avec attrib1 ayant priorité sur attrib2)
De toute évidence, « SELECT catID, MAX (attrib1), MAX (attrib2) DE test_table GROUP BY catID "ne fonctionne pas car il retournera 10 & 10 pour le 1er chat.
Alors, est-il possible de dire à MySQL de sélectionner la valeur maximale de la ligne attrib2, mais ne considérer que celles où attrib1 est aussi la valeur maximale? à-dire renvoyer les données suivantes
catID attrib1 attrib2
1 10 7
2 18 15
Merci pour toutes les réponses rapides les gars. C'est agréable de voir aussi différentes façons de le faire. – Charles
Est-ce que cela fonctionne? les 3 valeurs renvoyées doivent être celles de différentes lignes. – Ryo