obtenir somme des données en mysql

obtenir somme des données en mysql - SQL/NoSQL - Programmation

Marsh Posté le 18-07-2006 à 12:09:01    


Bonjour,
 
 
Voici mon problème , je voudrais inscrire la somme des poids pour chaque article et l'inscrire dans un champ "masomme" , tout ça en mysql
 
Ex : code article  poids   grammage  
            1            300         45  
            1            200         45
            1            500         40
            2            500         45
            2            100         40
 
Je voudrais avoir :
 
     code article  masomme  grammage
            1             1000         45
            1             1000         45
            1             1000         40
            2              600          45
            2              600          40
 
Comment cela peut s'effectuer ? faut-il faire un while ou pas ?
Je ne sais que faire
 
Merci d'avance pour vos réponses  :??:  

Reply

Marsh Posté le 18-07-2006 à 12:09:01   

Reply

Marsh Posté le 18-07-2006 à 12:11:41    

tu fais un :
 
UPDATE ta_table t SET t.somme=(SELECT SUM(poids) FROM table WHERE code_article=t.code_article);


Message édité par soulmanto le 18-07-2006 à 12:13:57
Reply

Marsh Posté le 18-07-2006 à 15:36:54    

ça ne fonctionne pas :-((
 
il me refuse le =(SELECT SUM(....
il y at-il une autre syntaxe ?

Reply

Marsh Posté le 18-07-2006 à 15:46:07    

Tu as quelle version de MySQL? Les sub-queries ne fonctionnent qu'à partir de la version 4, je crois...

Reply

Marsh Posté le 18-07-2006 à 15:49:51    

j'ai cette version : MySQL 4.0.23
apparemment les sous requetes ne fonctionnent pas ... reconfirme-moi STP :-))

Reply

Marsh Posté le 18-07-2006 à 15:57:31    

Arf, vérification faite:
 

Citation :


Le support des sous-requêtes (subqueries) sur MySQL est effectif à partir de la version 4.1

Reply

Marsh Posté le 18-07-2006 à 16:46:24    

je crois qu'il existe une syntaxe alacon pour mysql sur les version d'avant?
Un truc dans le genre:

update t1, t2 set ... where t1.id = t2.id


mais je sais pas si ça marche avec les fonctions d'agrégation

Reply

Marsh Posté le 18-07-2006 à 17:04:59    

je vais essayer quand même cette manière ...

Reply

Marsh Posté le 18-07-2006 à 18:05:27    

avec le update t1,t2 set t1.poids = SELECT SUM(....) where T1.id=t2.id
 
coince sur le SELECT SUM si je met poids =1 , cela fonctionne ....
 
il ne manque pas grand chose !!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed