Możesz obliczyć decyla w MySQL, aby zidentyfikować najlepszych klientów. Zasadniczo klasyfikujesz i grupujesz klientów w 10 grup na podstawie łącznej sprzedaży. Na podstawie wyniku możesz wymyślić bardziej skoncentrowane, odpowiednie inicjatywy dotyczące utrzymania. Oto gotowe zapytanie, aby to zrobić.
Oblicz Decile w MySQL
Np. Masz stół zamówienia który zawiera wszystkie zamówienia produktów dla każdego użytkownika. Chcesz obliczyć decyla w MySQL.
decyle+-----------+----------+------------+-------------- --+| identyfikator_użytkownika | łącznie | pozycja | decyl |+---------------+----------+---------+--------------- -+| 1 | 30 | 3 | 3 || 4 | 100 | 2 | 7 || 3 | 200 | 1 | 10 |+-----------+----------+---------+--------------- -+
Oto zapytanie, którego możesz użyć do obliczenia decyla w MySQL na podstawie sum. Wystarczy wymienić kolumny – user_id, sales oraz table – order. Agreguje całkowitą sprzedaż dla każdego użytkownika. Następnie klasyfikuje je pod względem łącznej sprzedaży. Na koniec oblicza decyla na podstawie rangi.
wybierz identyfikator_użytkownika ,total,rank,round(10*(cnt-rank+1)/cnt,0) jako decyl z (SELECT user_id,total,@curRank :=@curRank + 1 AS rankFROM (wybierz user_id ,suma(sprzedaż ) jako całość z `zamówienia ` grupuj według identyfikator_użytkownika )p, (SELECT @curRank :=0) rORDER BY total desc ) as dt,(select count(distinct user_id ) jako cnt z`zamówienie `) jako ct
Jeśli masz już całkowitą sprzedaż dla każdego użytkownika w tabeli i chcesz bezpośrednio użyć tabeli do obliczenia decyla, oto zapytanie