Sommation par ligne sous mysql [Résolu]

Signaler
-
 mamali -
Bonjour,

j'ai une table étudiant(matricule, prenom, nom, note1, note2, moyenne, resultat).
j'ai 2 étudiants dans ce tableau et dans la colonne moyenne je dois avoir la moyenne des étudiants calculée par ligne.
dans la colonne résultat je veux afficher "admis" si la moyenne est >=10, sinon "ajourné"
quelle requête dois-je saisir pour calculer la moyenne de chaque étudiant puis afficher "admis" ou "ajourné" s'il vous plaît?
merci d'avance

1 réponse

Messages postés
27872
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
22 janvier 2020
5 852
Bonjour,

Pour avoir une liste :

SELECT matricule, prenom, nom, (note1+note2)/2 as moyenne,
    CASE moyenne
      WHEN >= 10 THEN 'admis'
      ELSE 'ajourné'
    END AS resultat
FROM etudiant


Mais si ton objectif c'est de mettre à jour la table, il te faut faire un update avec les éléments ci-dessus.

Cdlt
bonjour jee pee
merci pour l'intérêt que portez à ma préoccupation,
ça me donne pas le résultat dont je veux.
je cherche premièrement la moyenne par étudiant
second lieu je cherche à afficher le résultat par admis ou ajourné.
merci
Bonsoir à toutes et à tous
voilà le résultat dont je cherchais:

pour la colonne moyenne :

update etudiant set moyenne = (note1 + note2)/2;
where mat = 1;


pour la colonne résultat:

update etudiant set résultat ='admis' where moyenne >= 10;


update etudiant set résultat ='ajourné' where moyenne < 10;


merci
jee pee
Messages postés
27872
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
22 janvier 2020
5 852 > mamali
maintenant que tu l'as fait un trois requetes, cela peut se faire en une
update etudiant set moyenne =(note1 + note2)/2,
résultat = CASE 
               WHEN  (note1 + note2)/2 >= 10 THEN 'admis'
               ELSE 'ajourné'
           END
;

je ne te garantis pas la syntaxe ;-)
> jee pee
Messages postés
27872
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
22 janvier 2020

j'ai testé et ça marche, c'est d'ailleurs mieux que d'aller avec 2 requêtes.
merci infiniment