Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/09/2011, 16h47   #1
Membre du Club
 
Inscription : novembre 2007
Messages : 227
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 227
Points : 66
Points : 66
Par défaut Faire la somme des données identiques

Bonjour,

Je veux avoir la somme des données identiques sans avoir chaque donnée a sa quantité. J'ai essayé avec ce code :

Code :
1
2
3
4
5
6
7
8
SELECT e.num_serie, e.designation, ia.reference, a.designation, SUM(ia.quantite) AS somme
FROM equipement e, intervention i, be_equipement be, int_art ia, article a
WHERE e.code_equipement=be.code_equipement
AND i.numero_be= be.numero_be
AND ia.num_interv = i.num_interv
AND e.num_serie = '10'
AND ia.reference = a.reference
GROUP BY e.num_serie, e.designation, ia.reference, a.designation,ia.quantite HAVING ia.quantite > 0
Exemple :

j'ai comme résultat:
1- 10 - A - 11 - Art1 -5
2- 10 - A - 11 - Art1 - 3
3- 10 - A - 02 - Art22-12

Je cherche ce résultat:

1- 10 - A - 11 - Art1 - 8
2- 10 - A - 2 - Art22 -12

Merci pour vos propositions.
tunis71187 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 17h10   #2
Modérateur
 
Homme Fabien
Ingénieur d'études en décisionnel
Inscription : septembre 2008
Messages : 5 686
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 34
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études en décisionnel
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2008
Messages : 5 686
Points : 10 431
Points : 10 431
Envoyer un message via ICQ à Waldar Envoyer un message via Skype™ à Waldar
Il faut enlever la quantité de votre clause de regroupement.
__________________
Email : http://scr.im/waldar
Waldar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 17h15   #3
Membre émérite
 
Homme Olivier Dehorter
Ingenieur de recherche - Ecologue
Inscription : juin 2003
Messages : 697
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dehorter
Localisation : France

Informations professionnelles :
Activité : Ingenieur de recherche - Ecologue

Informations forums :
Inscription : juin 2003
Messages : 697
Points : 837
Points : 837
Citation:
Je veux avoir la somme des données identiques sans avoir chaque donnée a sa quantité.
je ne comprend pas !

mais en me référant la requête, elle a un problème :
est incorrect.
Ce doit être la valeur de regroupement qui doit être dans la clause HAVING
Si l'idée est d'inclure les quantités > 0
alors c'est dans la clause WHERE qu'il faut l'indiquer
dehorter olivier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2011, 14h18   #4
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi
c'est ce que tu cherches!!!!
Code :
1
2
3
4
5
6
7
8
9
SELECT e.num_serie, e.designation, ia.reference, a.designation, SUM(ia.quantite) AS somme
FROM equipement e, intervention i, be_equipement be, int_art ia, article a
WHERE e.code_equipement=be.code_equipement
AND i.numero_be= be.numero_be
AND ia.num_interv = i.num_interv
AND e.num_serie = '10'
AND ia.reference = a.reference
GROUP BY e.num_serie, e.designation, ia.reference, a.designation
HAVING SUM(ia.quantite) > 0
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h23.


 
 
 
 
Partenaires

Hébergement Web