Select sum multiples

Signaler
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
-
Messages postés
3
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
15 avril 2009
-
bonjour,
j'ai une table avec des colonnes quantité(decimal) et  credit(bit)
j'aimerais savoir s'il est possible de faire en une seule requete
un  select sum(qte) where credit=0 et sum(qte) where credit=1 et sum(qte)

merci...

3 réponses

Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
36
Salut

Peut tu mettre un exemple.
Ca sera plus parlant.

Un Union peux repondre au probleme

select sum(qte) as qte, 'credit' as CR where credit = 1
UNION
select sum(qte) as qte, 'credit2' as CR where credit = 0

Ici normalement tu auras deux lignes
Credit et Credit2

Bon SQL
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
1
en fait j'aimerais que les idfferentes sommes se trouvent sur la meme ligne ds des colonnes differentes.
Comme je le fais pour plusieurs articles (je groupe par article) ce serait bien plus simple
je veux avoir comme resultat

article      qte      qte_cred      qte_tot
1            2            3                  5
2            6               12            18
.....
Messages postés
3
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
15 avril 2009

Bonjour,
Moi à ta place j'utiliserais un CASE dans ton SUM
Comme cela  :

SELECT  SUM(CASE WHEN credit = 0 THEN qte ELSE NULL END) AS credit1,
                SUM(CASE WHEN credit = 1 THEN qte ELSE NULL END) AS credit2        
FROM     Ta_table

Ton retour sera sur une seule ligne.

article      credit1         credit2
1                8                   12

Cordialement