SQL Pourcentage du total cumulatif



SQL > SQL Avancé > Pourcentage du total cumulatif 

Pour afficher le pourcentage du total cumulatif sous SQL, nous utilisons la même idée que nous avons traitée dans la section Pourcentage du total. La différence est que nous souhaitons obtenir le pourcentage du total cumulatif, et non la contribution de pourcentage de chaque ligne individuelle. Utilisons l’exemple suivant pour illustrer :

Table Total_Sales
Name Sales
John 10
Jennifer 15
Stella 20
Sophia 40
Greg 50
Jeff 20

il faut saisir :

SELECT a1.Name, a1.Sales, SUM(a2.Sales) / (SELECT SUM(Sales) FROM Total_Sales) Pct_To_Total
FROM Total_Sales a1, Total_Sales a2
WHERE a1.Sales <= a2.Sales OR (a1.Sales = a2.Sales AND a1.Name = a2.Name)
GROUP BY a1.Name, a1.Sales
ORDER BY a1.Sales DESC, a1.Name DESC;

Résultat:

Name Sales Pct_To_Total
Greg 50 0.3226
Sophia 40 0.5806
Stella 20 0.7097
Jeff 20 0.8387
Jennifer 15 0.9355
John 10 1.0000

La sous-requête SELECT SUM(Sales) FROM Total_Sales calcule la somme. Il est alors possible de diviser le cumul, "SUM(a2.Sales)", par cette somme pour obtenir le pourcentage du total cumulatif pour chaque ligne.



Copyright © 2014   1keydata.com   Tous droits réservés


SQL Avancé
SQL UNION
SQL UNION ALL
SQL INTERSECT
SQL MINUS
SQL Sous-requête
SQL EXISTS
SQL CASE
SQL Rang
SQL Médiane
SQL Exécution totale
SQL Pourcentage du total
SQL Pourcentage du total cumulatif




Plan du site