[PHP/MySQL] aide pour une requete

antic80 Messages postés 4877 Statut Contributeur -  
Bergie Messages postés 146 Statut Membre -
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. Bergie Messages postés 146 Statut Membre 7
     
    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
    0
  2. antic80 Messages postés 4877 Statut Contributeur 1 178
     
    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
    0
    1. Bergie Messages postés 146 Statut Membre 7
       
      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
      0
  3. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    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`
    0
    1. Bergie Messages postés 146 Statut Membre 7
       
      Ah, je ne savais pas qu'on pouvait sommer directement avec MySQL, c'est bon à savoir, on s'embête moins du coup.
      :p
      0