[PHP/MySQL] aide pour une requete

bonjour

voila j'ai une table stats dans laquelle s'enregistre le numéro d'un éleve , le numéro de la question et de l'exercice qu'il vient de faire et le nombre de points obtenue.

j'aimerai savoir qu'elle requete je dois faire pour savoir combien de points a obtenue l'eleve a la fin de l'exercice sachant que ds la table ils y a plusieurs eleves qui sont enregistrés

3 réponses

  1. Bonjour

    Si tu le fais directement à partir de phpmyadmin :
    SELECT `note` FROM `table_resultats` WHERE `eleve`=numero

    Si tu le fais à partir d'un script php :
    $sql = 'SELECT `note` FROM `table_resultats` WHERE `eleve`=numero';

    Voila
    1. Contributeur
      merci pour ta réponse mais je dois additionnée en faite le nombre de points

      dans ma table j'ai ca

      id-eleve - numquest - categorie - nb de points

      1 - 1 - 1 - 0
      1 - 2 - 1 - 1
      2 - 1 - 1 - 0
      1 - 3 - 1 - 2
      1 - 4 - 1 - 0

      j'aimerai par exemple connaitre le nombre de points obtenus par l'eleve 1 sur la catégorie 1
      1. Le mieux est de passer par php :

        // Initialise la variable note à 0
        note=0;

        // Appelle la base SQL et récupère les données
        $query = mysql_query(SELECT `points` FROM `table` WHERE `id` = 1 AND `categorie` = 1);

        // Tant qu'on a des notes de cet élève, on les additionne
        while($encore = mysql_fetch_array($query))
        note+=$encore[points];

        // On affiche lanote
        print ("Note : $note");

        Ensuite ut peux faireun formulaire qui permet de rentrer l'ID de l'élève et la catégorie à analyser.

        (Il y a peut etre qques erreurs, mais ca devrait marcher, ça fait longtemps que je n'ai plus touché à MySQL et PHP, désolé)
        Voila
    2. Mais si tu préfères une seule requête sql, essaie quelque chose du genre

      SELECT SUM(`nb de points`) FROM `table` WHERE `id_eleve` = 1

      Et si tu veux une seule requête qui te donne le score de tous les élèves :

      SELECT SUM(`nb de points`) FROM `table` GROUP BY `id_eleve`
      1. Ah, je ne savais pas qu'on pouvait sommer directement avec MySQL, c'est bon à savoir, on s'embête moins du coup.
        :p