IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Récupérer la valeur Maximale d'un élément [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2009
    Messages : 15
    Par défaut Récupérer la valeur Maximale d'un élément
    Bonjour à tous,

    Afin d'optimiser les valeurs contenues dans ma base de données je souhaite réaliser une sélection spécifique, visant à récupérer la meilleure note obtenue par étudiants.

    Ma table est composée de 4 champs:
    - ID
    - Nom
    - Prenom
    - Resultat

    L'exercice pouvant être effectué plusieurs fois par les étudiants, nous obtenons plusieurs valeurs différentes de "Resultat".

    Comment puis je extraire le "Resultat" maximum obtenu par chacun des étudiants.

    Merci de votre compréhension.

    Cordialement
    Arnaud

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    C'est quoi "un etudiant" dans ton cas, un couple nom/prénom ?
    Comment sont gerés les homonymes ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2009
    Messages : 15
    Par défaut
    L'étudiant et enregistré avec ses caractéristiques NOM Prénom ainsi que son numéro d'identifiant.

    voilà ce que ca donne dans ma table

    ID Nom Prénom Résultat
    184996 Vaivre Mikaël 8
    184996 Vaivre Mikaël 2
    184996 Vaivre Mikaël 0
    156895 Dupont Louis 5
    156895 Dupont Louis 2
    ...
    ...
    ...
    ...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 36
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT resultat FROM table WHERE id = 'id_de_ton_etudiant' ORDER BY resultat DESC LIMIT 1

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2009
    Messages : 15
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    SELECT resultat FROM table WHERE id = 'id_de_ton_etudiant' ORDER BY resultat DESC LIMIT 1

    C'est le "LIMIT 1" qui vas me sélectionner le premier résultat de mon étudiant, c bien ca...


    Merci de votre attention

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 36
    Par défaut
    Le limite 1 sert a retourner une ligne seulement.
    Mais entre la proposition de sabotage et la mienne, je ne sais pas laquelle est la plus efficace (niveau performance)

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu devrais revoir la conception de ta base :

    une table pour les etudiants :
    id ; nom ; prenom

    une table pour les resultats :
    id ; etudiant_id ; resultat

    Actuellement tu repetes inutilement le nom et le prenom sur tous tes enregistrements avec tous les risques que cela implique comme une faute de frappe sur une des lignes.

    Ensuite pour le resultat maximal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT MAX(resultat) FROM t_resultat GROUP BY etudiant_id
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT 1.0] Récupérer la profondeur maximale d'un élément
    Par Jerome Briot dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 10/03/2012, 20h25
  2. [JDOM] Récupérer la valeur de l'attribut d'un élément
    Par bidulee dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 06/05/2009, 12h13
  3. Récupérer la valeur de l'opacité d'un élément
    Par Tchupacabra dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/11/2008, 15h05
  4. Réponses: 17
    Dernier message: 08/08/2008, 20h13
  5. Réponses: 4
    Dernier message: 26/04/2006, 17h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo