[mysql]SUM

Christine -  
 Christine -
Bonjour,

Pourriez-vous m'aider, svp?
J'ai une base de données mysql dans laquelle je voudrais faire la somme d'un champs ('montant') et afficher le 'nom' des clients qui dépassent 250 euros.

Merci

16 réponses

babou54
 
select nom from client
having sum(montant >250)

ca doit une requete dans le genre la
0
babou54
 
rectification

Select nom from client
having sum(montant) >250
0
Christine
 
Merci,
il me renvoie :
Resource id #5
0
babou54
 
est ce que la requete marche sur mysql ?
0

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

Posez votre question
Christine
 
Voila mon code :

<?php
mysql_connect("localhost", "root", "mysql");
mysql_select_db("mabase");
$reponse = mysql_query("SELECT nom FROM clients HAVING SUM(montant) >200");
while ($donnees = mysql_fetch_array($reponse) )
{
echo $donnees['nom'];
echo "<br />";
}

mysql_close();
?>

Il me renvoie tout le temps le nom d'un client ( toujours le même) quelle que soit l'évaluation.
Par ex: >200 ou < 100 c pareil.
0
babou54
 
essaie voir en faisant ca :
SELECT distinct nom FROM clients HAVING SUM(montant) >200
0
Christine
 
Ca ne change rien il me renvoie toujours le même seul client.
En plus, le client qu'il me renvoie n'a même pas une somme >200.
0
babou54
 
tu eux donner le script de ta table
0
christine
 
qu'entends-tu par script de ma table ?
0
babou54
 
create table client ...
0
christine
 
comment puis-je te donner ca?
j'ai créé ma table via phpmyadmin.
0
babou54
 
tu va sur phpmyadmin et ta un onglet exporter et tu l'exporte en sql
0
christine
 
-- Structure de la table `clients`
0
Christine
 
Merci babou54, j'y suis arrivée comme suit:

$reponse = mysql_query("SELECT nom,SUM(montant) AS somme FROM clients GROUP BY nom");
while ($donnees = mysql_fetch_array($reponse) )
{
echo $donnees['somme'];?> ...... <?php echo $donnees['nom'];
echo "<br />";
}

Ce n'est pas exactement ce que je voulais mais, de cette façon, je vois par moi même ceux qui dépassent les 250€.
Ca aurait été mieux si j'avais pu extraire uniquement ceux qui dépassent... Mais bon...
0
P@t@ch0n Messages postés 603 Statut Membre 85
 
Rajoute le HAVING comme cela t'avait été indiqué.
SELECT nom, SUM(montant) AS somme FROM clients GROUP BY nom HAVING(somme) > 250
0
Christine
 
Super, cool, merci à vous deux.
Bon w-end
0