Poziom średniozaawansowany

Zadanie 22

Wcielmy w życie zasadę Pareto (zasada 80/20). Mówi ona, że tylko ok. 20% klientów firmy odpowiada za ok. 80% jej przychodów. Sprawdźmy, czy podobna relacja zachodzi i tu.

W tym celu będziemy potrzebować: ID klienta, łącznej wartości zamówień klienta, udziału procentowego tych zamówień w stosunku do wszystkich zamówień, oraz podliczenia punktów procentowych.

Schamat: OE, Tabela: Customers, Kolumny: customer_id, order_total, Wynik: 47 rows

 

 

 

 

Rozwiązanie

WITH Subquery AS

( SELECT DISTINCT customer_id,

SUM(order_total) OVER(partition BY customer_id) AS Customer_Total,

SUM(order_total) OVER() AS Total,

CAST(100* SUM(order_total) OVER(partition BY customer_id) / SUM(order_total) OVER() AS NUMBER(5,2)) AS Customer_Percent

FROM orders

)

SELECT customer_id, customer_total, customer_percent,

SUM(customer_percent) OVER(order by customer_percent DESC) AS Sum_Pct

FROM Subquery

ORDER BY customer_total DESC;

[collapse]

Alexandretta

Kobieta gracz, która wie czego chce i dąży zawsze do tego by osiągnąć swój cel. Po godzinach pracy, z zapałem i piekielnymi ognikami w oczach biega po lochach i tłucze bogu ducha winne zombie i inne szkielety. Miłośniczka wszelkiej maści cRPG z wielką ilością współczynników, w których czuje się najlepiej. Notoryczne problemy z wyborem klasy i rasy bo wszystko jest fajne... W chwilach zwątpienia zatraca się przy dźwiękach mieczy, roztrzaskiwanych tarcz i okrzyków bojowych, słuchając wiking metalu z zimnej, niegościnnej, odległej Skandynawii. Czasem zdarzy jej się pograć w jakąś strategię bądź nawet w FPP, ale tylko na easy, żeby nie psuć sobie niepotrzebnie nerwów.

Related Articles

Back to top button