valeur la plus proche et pourcentage

Petit nouveau ! | 1 Messages

29 déc. 2012, 13:19

Bonjour,

Je me permet de poser ma question ici avant capitulation !
Dans le cadre d'un college, j'éssaie via mysql de faire une requete
permetant :

[b]de lister toutes les notes des éleves du college et de les trier en pourcentage
du plus proche(en terme d écart) au plus grand d'un eleve donné ! [/b] :cry:

jai 2 colonne dans ma base. prenom et note.
Si on prend nicolas, il a 16(demoyenne generale) , si un autre eleve à 16 dans le college il aura 100% et sera donc en premier resultat de la recherche.

Si en plus on pouvait exclure du résultat de la recherche celui de l'éleve donné (en l'occurence nicolas) ce serait magique mais j'en suis pas la..

Merci à ceux qui sauron maider :wink:


Jess

ViPHP
ViPHP | 928 Messages

30 déc. 2012, 03:02

Bonsoir,

en admettant qu'une table "eleves" contienne un champ "moyenne" contenant la moyenne de l'élève, et une colonne "prenom", il suffit de faire :
SELECT *, ABS(16 - moyenne) AS ecart
FROM eleves
ORDER BY ecart
Dans cet exemple on suppose que 16 est la valeur de la moyenne de l'élève auquel vous faîte référence. Si vous devez tout faire en une seule requête :
SELECT *, ABS((SELECT moyenne FROM eleves WHERE prenom = 'Nicolas') - moyenne) AS ecart
FROM eleves
ORDER BY ecart
Et en excluant l'élève concerné des résultats :
SELECT *, ABS((SELECT moyenne FROM eleves WHERE prenom = 'Nicolas') - moyenne) AS ecart
FROM eleves
WHERE prenom != 'Nicolas'
ORDER BY ecart
Cordialement