Additionner 2 valeurs d'une base mysql [Résolu]

Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
- 17 déc. 2009 à 13:00 - Dernière réponse :
Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
- 17 déc. 2009 à 20:01
Bonjour,
Ma table:

Nom Date Score
Gerard 15/12/2009 159
Gerard 14/12/2006 153
Robert 15/12/2009 185
Gerard 13/12/2004 105
Robert 18/11/2001 85

Je voudrais additionner les valeurs pour les deux dernières entrées de Gérard.

Ce code ne fonctionne pas:

<?php
mysql_connect("localhost","root","");
mysql_select_db("participants") or die('Impossible de sélectionner une base
de donnée.');
$gerard=mysql_query("SELECT SUM(score) FROM scores WHERE nom='Gerard' ORDER BY date DESC LIMIT 0,2 ");
$gerard_1 = mysql_fetch_array($gerard);
echo "$gerard_1[0]";
?>

Quelqu'un peut il m'aider ??
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Dernière intervention
27 avril 2012
17 déc. 2009 à 19:33
3
Merci
Salut,

Pense à indiquer les messages d'erreurs Eyeron !! Sans eux c'est souvent la galère pour déboguer.

SELECT SUM(score) FROM scores 
WHERE score in (select score FROM scores WHERE nom='Gerard' ORDER BY date DESC LIMIT 0,2)

Il n'est pas possible de mettre un LIMIT dans un IN (ça serait trop simple )

J'ai testé, mais brièvement :
SELECT SUM(S) FROM (
SELECT score as S 
FROM scores 
WHERE nom='gerard' 
ORDER BY date DESC
LIMIT 2) AS SR


Ca devrait répondre à ton besoin, sans avoir à retraiter côté PHP.


Cordialement,

Kohntark -

Merci kohntark 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de kohntark
Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
17 déc. 2009 à 13:03
0
Merci
Je souhaite qu'il s'affiche 312...
Commenter la réponse de Eyeron
Messages postés
2382
Date d'inscription
lundi 4 février 2002
Dernière intervention
29 décembre 2012
17 déc. 2009 à 13:25
0
Merci
Et ça ??
SELECT SUM(score) FROM scores WHERE score in (select score FROM scores WHERE nom='Gerard' ORDER BY date DESC LIMIT 0,2) ??
Je pense pas que ça marche mais je suis en pleine diggestion du repas de noel de ma société.
S.
Commenter la réponse de syndrael
Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
17 déc. 2009 à 13:39
0
Merci
J'obtiens ce message

Warning: mysql_fetch_array() expects parameter 1 to be resource

(Bonne digestion !!!! et merci pour ta réponse)
Commenter la réponse de Eyeron
Messages postés
2382
Date d'inscription
lundi 4 février 2002
Dernière intervention
29 décembre 2012
17 déc. 2009 à 14:48
0
Merci
Au lieu de passer par PHP tu ne peux pas lancer ta requete via un client MySQL ? L'erreur que tu as est du PHP, il faut remonter un cran plus haut pour voir le résultat et surtout un éventuel message d'erreur en provenance de MySQL.
S.
Commenter la réponse de syndrael
Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
17 déc. 2009 à 18:19
0
Merci
Non ca ne fonctionne pas non plus :(

sinon on ne peut pas déclarer deux variables et ensuite les additionner ?

J'ai essayé mais je n'y arrive pas !
Commenter la réponse de Eyeron
Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
17 déc. 2009 à 19:05
0
Merci
J'ai essayé ça:

[i]<?php
mysql_connect("localhost", "root", "");
mysql_select_db("scores");

$score_gerard1 mysql_query("SELECT score FROM `scores` WHERE `nom` 'Gerard' ORDER BY ID DESC LIMIT 0,1");
$score_gerard2 mysql_query("SELECT score FROM `scores` WHERE `nom` 'Gerard' ORDER BY ID DESC LIMIT 1,1");

function additionner($x, $y)
{
return $x + $y;
}

echo additionner ($score_gerard1, $score_gerard2);

?>/i

Il me renvoie 9 ???!!!!!
Commenter la réponse de Eyeron
Messages postés
12
Date d'inscription
vendredi 11 avril 2003
Dernière intervention
22 mars 2010
17 déc. 2009 à 20:01
0
Merci
Super ça marche c'est exactement ce que je voulais merci ;)
Commenter la réponse de Eyeron

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.