Excercice a resoudre

Résolu
tytyke -  
 Anonyme -
Bonjour,
Je debute dans le sql et je ne trouve pas les reponses
Voici mes tables :

Etudiant( Matricule, Nom,Prenom)
Spécialité( Matricule,Specialité)
Note( Matricule,Note,Module)

Et les requêtes que je dois réaliser :
1-La moyenne générale pour chaque spécialité ?
2- La moyenne générale pour chaque étudiant
Donnez moi les reponses svp .

6 réponses

william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
les gars ont raison
prochainement essaie de faire un effort et propose une solution pour que l'on te dise si c'est juste ou non

tout compte fais voici un bref aperçu de ce que je pense moi de ton systeme (MLD)

Etudiant(etud_matricule, etud_nom, etud_prenom, spec_id)
Specialite(spec_id, spec_libelle)
Note(note_id, etud_matricule, modu_id, note_valeur)
module(modu_id, modu_libelle)

1. Requete : La moyenne générale pour chaque spécialité
SELECT spe.spec_libele, AVG(not.note_valeur) as moyenne 
FROM Specialite spe, Etudiant etu, Note not 
WHERE spe.spec_id = etu.spec_id 
AND etu.etud_matricule = not.etud_matricule
GROUP BY spe.spec_libelle


2. Requete : La moyenne générale pour chaque étudiant
SELECT etu.etud_nom, etu.etud_prenom, AVG(not.note_valeur) as moyEtud
FROM Etudiant etu, Note not
WHERE etu.etud_matricule = not.etud_matricule
GROUP BY etu.etud_nom, etu.etud_prenom



ici j'espère bien que tu connais la definition de AVG, la table module n'est pas obligatoire ici juste pour te montrer d'où proviens la clef modu_id qui se trouve dans la table Note.
les clef primaires sont soulignées si tu retrouves le même nom dans l'autre table il s'agit de la clef secondaire (les deux tables sont liées) essaie de reproduire le MCD chez toi et tu veras les migrations des clefs.

cdlt.
2
Anonyme
 
Cooooooooool Ah !ça fait plaisir.
Maintenant j'ai bien compri. Merci pour tout, j'avais franchement pas pensé etre aide par qqn de cette manière,pour un debutant comme moi.
C'est sur que vous etes un expert dans la matiere .Merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii mille fois william7007.
cordialement.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour,

On gagne quoi ?

;o)
0
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
Slt
à mon avis tu auras une de ces teribles redondances dans ta tables spécialité
pourquoi t'aurais pas utiliser la clef primaire de la table spécialité comme clef etrangere dans la table étudiant? et là la premiere requetes aurait été aussi facile
0
tytyke
 
Salut,
Je veux garder l'exercice tel qu'il est , je ne veux rien changer
1-La moyenne generale pour chaque specialite:
SELECT ETUDIANT.maticule,ETUDIANT.nom, ETUDIANT.prenom,SPECIALITE.matricule,SPECIALITE.specialite,
AVG ( note) AS Moyennegenerale
FROM ETUDIANT, NOTE ,SPECIALITE
GROUP BY SPECIALITE.matricule,SPECIALITE.specialite;
2-La moyenne generale pour chaque etudiant:
SELECT ETUDIANT.maticule,ETUDIANT.nom, ETUDIANT.prenom,AVG ( Moyennegenerale)
FROM Moyennegenerale
GROUP BY ETUDIANT.maticule,ETUDIANT.nom, ETUDIANT.prenom;
Si c'est faux ,donnez moi le vrai svppppppppppppppp
0
william7007 Messages postés 335 Date d'inscription   Statut Membre Dernière intervention   46
 
Slt je veux bien t'aider mais je ne trouve pas comment faire la jointure entre la table spécialité et note
et de plus les clef des tables ne sont pas claire. que signifie MATRICULE c'est la clef de quelle table? ou bien MATRICULE indique la clef de chaque table? be vraiment le MLD n'est pas claire pour moi.
et les requête que tu as donné plus haut ben je ne pense pas trop elle te donneront des résultats éronnés car il y a risque de produit cartésien que de jointure. c'est le pourquoi je demande de revoir le système

la plus part des erreur de programme ne sont pas du à l'incompétence des programmeurs mais à la mauvaise spécification des concepteurs. si le programme est mal conçu ben probablement nous auront des résultats faux. ton modèle ne te permet pas de répondre à tes questions (du moins pour moi). revoie le modèle et tu auras une réponse juste
dsl pour le speech.

cdlt.
0
tytyke
 
Satut,
Si vous voulez changer les donees des relations faites le mais garder les questions svp doneez moi les reponses svp,j'en ai besoin pour avancer Pour un debutant c'est pas evident?????
Si je vous dis que c'etait un excercice donné a un examen allez vous me croire?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Là tu demandes clairement qu'on fasse ton boulot. Penses-tu que le jour de l'examen tu pourras avoir une réponse sur CCM ?

T'aider à résoudre le problème, on peut faire et d'ailleurs william7007 a commencé à te donner des pistes. A toi de bosser maintenant.

>:o|
0