Determiner le rang d'un élève
Bonjour chers tous,
j'ai conçu un code qui me permet d'afficher les élèves d'une classe selon leurs moyenne,
Quelqu'un peut-il m'aider sur comment écrire une requête qui permet d'afficher le rang de chaque élève
j'ai conçu un code qui me permet d'afficher les élèves d'une classe selon leurs moyenne,
Quelqu'un peut-il m'aider sur comment écrire une requête qui permet d'afficher le rang de chaque élève
4 réponses
-
ModérateurBonjour,
Tu devrais t'inspirer de : https://www.developpez.net/forums/d139375/bases-donnees/langage-sql/sql-server-probl-me-classement-calcul-d-rang/ solution qui prend en compte les ex aequo
-
Merci pour le lien, Comment pourrai ecrire en PHP si j'ai envi de recuperer le RANG d'un élève et l'afficher à part?
-
-
@yg_be
//Recherche les noms et prenoms des élèves $sql = "SELECT E.* , M.* FROM eleve E LEFT JOIN moyengeneral M ON M.ideleve = E.ideleve WHERE E.class = ? AND E.iduser = ? AND M.moyene >= ? ORDER BY M.moyene DESC"; $datas = array($class, $iduser, $moyen); try { $req = $bdd->prepare($sql); $req->execute($datas); $donnees = $req->fetchAll(); //on stocke le resultat de la requete dans un ARRAY } catch(Exception $e){ die('Erreur : '.$e->getMessage()); } -
Contributeur@modemo2018peux-tu partager la requête qui te donne le rang?
-
-
$sql = "SELECT E.* , M.* FROM eleve E LEFT JOIN moyengeneral M ON M.ideleve = E.ideleve WHERE E.class = ? AND E.iduser = ? ORDER BY M.moyene DESC"; $datas = array($class, $iduser); try { $req = $bdd->prepare($sql); $req->execute($datas); $donnees = $req->fetchAll(); //on stocke le resultat de la requete dans un ARRAY } catch(Exception $e){ die('Erreur : '.$e->getMessage()); }
J'aimerai recupéré le RANG d'un élève selon sa moyenne et l'afficher à part,
Comment puis-je procédé SVP?-
Contributeuras-tu compris et utilisé les informations données ici: https://forums.commentcamarche.net/forum/affich-36377033-determiner-le-rang-d-un-eleve#1
-
-
$sql = "SELECT E.* , M.* FROM eleve E LEFT JOIN moyengeneral M ON M.ideleve = E.ideleve WHERE E.class = ? AND E.iduser = ? AND M.moyene >= ? ORDER BY Rang DESC"; $datas = array($class, $iduser, $moyen);
Quand je met Rang à la place de la moyenne, il m'affiche une erreur:
Erreur : SQLSTATE[42S22]: Column not found: 1054 Unknown column 'rang' in 'order clause'