Select sum multiples

cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 - 7 févr. 2007 à 05:48
Nicolas54230 Messages postés 3 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 15 avril 2009 - 15 avril 2009 à 16:21
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

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
7 févr. 2007 à 23:59
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
0
cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 2
8 févr. 2007 à 14:04
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
.....
0
Nicolas54230 Messages postés 3 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 15 avril 2009
15 avril 2009 à 16:21
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
0
Rejoignez-nous