Requête SQL - Le plus grand d'une somme...

Résolu/Fermé
Mekho Messages postés 8 Date d'inscription mardi 27 janvier 2015 Statut Membre Dernière intervention 30 janvier 2015 - Modifié par Mekho le 27/01/2015 à 20:54
Mekho Messages postés 8 Date d'inscription mardi 27 janvier 2015 Statut Membre Dernière intervention 30 janvier 2015 - 28 janv. 2015 à 12:37
Bonjour à tous,
je m'explique, ma table "Score" possède une colonne "nom", le nom du champion, et "Kill" qui attribue à un champion le nombre de personnage tué pendant une partie.
Un personnage est présent plusieurs fois dans la table (une fois par partie), et je voudrais simplement calculer quel personnage possède, au total, le nombre le plus élevé de Kill.
De même pour un les victoires, cependant, elle est représentée par un booleen "victoire", colonne de la table "Score".
Quel personnage possède le plus grand nombre de victoire ?

Merci d'avance !
A voir également:

3 réponses

jordane45 Messages postés 38275 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 novembre 2024 4 696
27 janv. 2015 à 23:05
Bonsoir,
A vu de nez.. je dirais que simplement avec du SUM , du GROUP BY et du ORDER DESC tu devrais pouvoir t'en sortir....

un truc du genre :
SELECT nom
       ,SUM(kill) as NB_KILL
FROM Score
GROUP BY nom
ORDER BY (SUM(kill)) DESC
LIMIT 1

1
Mekho Messages postés 8 Date d'inscription mardi 27 janvier 2015 Statut Membre Dernière intervention 30 janvier 2015
28 janv. 2015 à 09:45
Merci bien c'est niquel ça fonctionne !
0
Mekho Messages postés 8 Date d'inscription mardi 27 janvier 2015 Statut Membre Dernière intervention 30 janvier 2015
28 janv. 2015 à 12:21
Par contre, comment pourrais fonctionner la même chose avec des booleens ?
0
Mekho Messages postés 8 Date d'inscription mardi 27 janvier 2015 Statut Membre Dernière intervention 30 janvier 2015
28 janv. 2015 à 12:37
C'est bon j'ai trouvé, encore merci pour ton aide !

SELECT "Champion",COUNT("Win") AS NB_WIN
  FROM "Score"
  WHERE "Win"='TRUE'
  GROUP BY "Champion"
  ORDER BY NB_WIN DESC;
0