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

Langage SQL Discussion :

Mettre une moyenne d'un groupe+individuelle dans 1 requete


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 148
    Points : 59
    Points
    59
    Par défaut Mettre une moyenne d'un groupe+individuelle dans 1 requete
    Bonjour,

    J'ai deux éléments a mettre sur un même graph

    L'evolution des notes d'un eleve par mois

    +

    L'évolution de la moyenne de la classe par mois

    Pour ainsi voir comment evolue l'eleve par rapport à sa classe

    Comment procéder pour faire ceci? je ne vois pas du tout comment batir ma requete.

    Mes tables sont simples

    Notation : Numéro_Eleve,...,Note1...,Mois...
    Eleve : Numero_Eleve,Nom...
    Classe: Numero_Classe,Nom_CLasse...
    Appartenir : Numero_Eleve,Numero_Classe

    Merci beaucoup

  2. #2
    Membre confirmé Avatar de lper
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 396
    Points : 641
    Points
    641
    Par défaut
    Bonjour,
    je te propose ceci (si ton SGBD le permet) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    select c.Nom,
             a.Mois, 
             a.Note1,
             (select avg(b.Note1)
              from Notation b
              where b.Mois = a.Mois and
                        b.Numero_Eleve = e.Numero_Eleve)
    from Notation a,
            Eleve c,
            Appartenir d,
            Appartenir e
    where C.Numero_Eleve = :Param
            c.Numero_Eleve = a.Numero_Eleve and
            d.Numero_Eleve = c.Numero_Eleve and
            e.Numero_Classe = d.Numero_Classe
    A tester...
    La faiblesse humaine est d'avoir des curiosités d'apprendre ce qu'on ne voudrait pas savoir

  3. #3
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 148
    Points : 59
    Points
    59
    Par défaut
    Bonjour,

    Merci pour cette aide

    La requete ne marche pas elle me renvoit pas la moyenne correctemment, j'ai la note de la personne + la note de chaque personne de son groupe au lieu d'avoir la moyenne du groupe

    Donc cela me renvoit autant de fois la note de la personne qu'il y a de personne dans sa classe

    Par exemple J'ai 22 fois la note (22 etant le nombre d'élève ds la classe) mais en face j'ai la note de chacun de ces collègues

    Pourrait tu m'expliquer la requete car je ne la comrpends pas trop

    Pour me reexpliquer je voudrais la note de la personne + la moyenne de sa classe par moi

    Merci encore

  4. #4
    Membre confirmé Avatar de lper
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 396
    Points : 641
    Points
    641
    Par défaut
    Ok, je crois voir mon erreur, essye plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    select c.Nom, 
             a.Mois, 
             a.Note1, 
             (select avg(b.Note1) 
              from Notation b,
                      Appartenir e
              where b.Mois = a.Mois and 
                        e.Numero_Classe = d.Numero_Classe 
                        b.Numero_Eleve = e.Numero_Eleve) 
    from Notation a, 
            Eleve c, 
            Appartenir d
    where C.Numero_Eleve = :Param 
            c.Numero_Eleve = a.Numero_Eleve and 
            d.Numero_Eleve = c.Numero_Eleve
    Le calcul de la moyenne se fait sur les élèves appartenant à la classe de l'élève et ceci par mois.
    La faiblesse humaine est d'avoir des curiosités d'apprendre ce qu'on ne voudrait pas savoir

  5. #5
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 148
    Points : 59
    Points
    59
    Par défaut
    C'est bien cela j'aurai pu le voir aussi

    En tout cas merci beaucoup

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/07/2012, 15h46
  2. [SP-2007] WSS3 - Mettre une image à côté d'un lien dans un webpart lien
    Par lou-03 dans le forum SharePoint
    Réponses: 9
    Dernier message: 05/05/2010, 10h49
  3. Réponses: 2
    Dernier message: 30/11/2009, 20h45
  4. Mettre une zone de dessin avec photo dans un tableau
    Par sergiocorleon dans le forum VBA Word
    Réponses: 8
    Dernier message: 02/02/2009, 21h31
  5. Réponses: 16
    Dernier message: 21/07/2007, 11h20

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