begin process at 2012 05 31 11:16:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Bases de données

 > 

Tri sur 2 champs mysql


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Tri sur 2 champs mysql

samedi 4 décembre 2004 à 11:03:22 | Tri sur 2 champs mysql

arnold002

Bonjour,
J'ai une base de données mysql qui contient 2 champs note & nb_votant
Je calcule une moyenne :
$moyenne = note/nb_votant;
Je voudrai faire un tri dans ma table et afficher les 10 moyennes les plus élevées.

J'ai commencé comme ça mais ca ne trie pas correctement :

$sql = "SELECT note, nb_votant FROM table WHERE note!='0' AND nb_votant!='0' ORDER BY note, nb_votant DESC LIMIT 10";
$req = mysql_query($sql);
while( $result = mysql_fetch_array($req) )
{
echo("$moyenne");
}

Pouvez vous m'aider SVP ?
samedi 4 décembre 2004 à 11:58:47 | Re : Tri sur 2 champs mysql

winwarrior

Membre Club
Ben ... j'ai une petite idée mais bon :)


$sql = "SELECT note, nb_votant FROM table WHERE note!='0' AND nb_votant!='0' ORDER BY note, nb_votant DESC LIMIT 10";
$req = mysql_query($sql);
$i = 0;
$moyenne = 0;
while( $result = mysql_fetch_array($req) )
{
$i++;
$moyenne .= $result['note']." + ";
}
echo $moyenne/$i;


voila c'est un petit exemple ... je sais pas s'il fonctionne j'ai pas testé :)

win
samedi 4 décembre 2004 à 12:12:33 | Re : Tri sur 2 champs mysql

arnold002

En fait j'ai pas été assez précis...
Pour calculer ma moyenne j'utilise déjà une requête

$sql = "SELECT note, nb_votant FROM recette WHERE note!='0' ORDER BY note DESC LIMIT 10";
$req = mysql_query($sql);
$result = mysql_fetch_array($req);

$result_note = $result["note"]/$result["nb_votant"];
$result_note1 = round($result_note,1);

Ensuite, et seulement ensuite, je veux faire un tri grâce à une 2ème requête en fonction de $result_note1, de ce type :
$sql1 = "SELECT note, nb_votant FROM recette ORDER BY $result_note1 DESC LIMIT 10";
samedi 4 décembre 2004 à 12:24:16 | Re : Tri sur 2 champs mysql

windu

Membre Club
oulah!!!! $result_note1 n'est pas dans ta base???
donc ta 2° requete risque de pas marcher...
ce que tu peu faire c transformer $result_note1 en tableau avec 1 case par moyenne: ainsi il te suffi de trier ton tableau pour avoir tes moyenne dans l'odre ke tu veu

Que la Force soit avec toi, Jeune Padawan!!!
samedi 4 décembre 2004 à 12:37:38 | Re : Tri sur 2 champs mysql

arnold002

et non !!
malheureusement $result_note1 n'est pas dans la BDD. c une valeur que je calcule grâce à 2 champs de la BDD.
Ca aurait été trop simple !!
Je vais essayer ta méthode, on verra ce que ça donne merci .
samedi 4 décembre 2004 à 13:58:45 | Re : Tri sur 2 champs mysql

arnold002

Réponse acceptée !
J'ai trouvé !!
J'ai ajouté un champ moyenne dans ma BDD/ L'update se calcule automatiquement en fonction de note et de nb_votant.
Ensuite, j'ai tout simplement créé ma requête avec comme critère de tri mon champ moyenne.

Merci de ton aide
Slt


Cette discussion est classée dans : mysql, tri, nb, note, votant


Répondre à ce message

Sujets en rapport avec ce message

besoins d'aide pour E-commerce [ par speedylol ] Bonjour j aimerais selectionner un champs ou plusieur de deux table mes je vois pas comment faire cela sauriez vous m'aider merci?car je débute en php TRI mySQL [ par ehmarc ] SAlut,J'ai un petit probleme dde tri dans mes bases : j'ai des champs de types varchar qui n'ont que des valeurs monétaires du type 9,22Je voudrai tou multiple insertion dans mysql via un formulaire php [ par wizard512 ] je suis entrain d'éllaborer un script qui permet de multiple insertion dans mysql via un formulaire php.. mais je bloque pour la dernière étapes, quel valeur par défaut dans MYSQL [ par benjinancy ] Bonjour, je souhaite mettre un système de vote dans MYSQL, qui vérifie s'il existe déjà une note ou si ya aucune note (càd le chiffre zero)... or, je addition d'une selection de champs par requete sql [ par joebuz ] salut,voila j'ai une table de ce type là :ID      Date               NB1   22/06/2005    &nbsp pb requete count !!!! [ par fredericmaill ] Bonjour,voila j'ai un probleme avec ma requette COUNT voivi mon code :// verification si il existe deja un Responsable, si nb = 0 alors il n'y a pas d Erreur: mysql_num_rows() [ par refkaben ] Bonjour à tous!J'ai une erreur qui ma prend la tete depuis hier!Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c Affichage page par Page [ par milkasoprano ] Bonjour tous le monde,Je vous écris car j'ai un tous petit probleme au niveau de mon script qui affiche les resultat dune requete par page...Le script Mysql et ORDER BY [ par kishkaya ] J'ai une question assez simple, mais j'ai beau chercher sur tous les forums et sur le site de mysql, je trouve pas de solution: peut on ordonner les r double tri d'une table mysql [ par joebuz ] 'lut tout le monde,voila j'ai un petit probleme je souhaite trier un champ numerique d'une table par ordre decroissant (ca pas de probleme) et pour le


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales