sql >> Database teknologi >  >> RDS >> Mysql

Hvordan beregner man konverteringsrate i MySQL?

Det er vigtigt at beregne konverteringsraten for hver virksomhed. Sådan beregner du konverteringsraten i MySQL. Du kan også bruge denne forespørgsel til tragtanalyse i PostgreSQL, SQL Server og Oracle.

Hvordan beregnes konverteringsraten i MySQL?

Lad os sige, at du har 3 borde

tilmeldinger (user_id, date_joined) –  indeholder alle brugere, der har tilmeldt sig på din hjemmeside

indkøbsvogn (bruger-id, produkt-id, tilføjet dato) –  indeholder alle brugere, der har tilføjet mindst 1 produkt til deres indkøbskurv sammen med deres indkøbskurvsvarer.

køb (user_id,product_id,date_purchased,purchase_amount) – indeholder alle brugere, der  har købt mindst 1 produkt sammen med hvert produkts pris.

For at beregne konverteringsraten har vi kun vist nødvendige kolonner i vores tabeller, de kan altid indeholde flere kolonner.

Vi ønsker at måle konverteringsrater på 2 punkter i vores konverteringstragt

  1. Når brugere tilføjer mindst 1 vare til indkøbskurven – % af brugere, der har tilføjet mindst 1 vare til indkøbskurven
  2. Når brugere køber mindst 1 vare – % af brugere, der har købt mindst 1 vare

Bonus Læs:Sådan beregnes fastholdelsesrate i MySQL

Først beregner vi det samlede antal tilmeldinger, f.eks. de seneste 30 dage.

mysql> select count(*) as signups from signups 
where date_joined > now() - interval 30 day;
+---------+
| signups |
+---------+
|    2130 |
+---------+

Bonuslæsning:Hvordan udfylder man manglende datoer i MySQL?

Dernæst beregner vi det samlede antal brugere, der har tilføjet mindst 1 vare til deres indkøbskurv inden for de seneste 30 dage

mysql> select count(distinct user_id) as carts from shopping_carts
 where date_added > now() - interval 30 day;
+---------+
|   carts |
+---------+
|     416 |
+---------+

Sørg for at bruge distinct i ovenstående forespørgsel, kun for at tælle unikke brugere

Dernæst beregner vi antallet af brugere, der har købt mindst 1 vare inden for de seneste 30 dage.

mysql> select count(distinct user_id) as purchases from purchases 
where date_purchased > now() - interval 30 day;
+----------+
|purchases |
+----------+
|      136 |
+----------+

Bonus Læs:Sådan beregner du månedligt salg i MySQL

Nu hvor vi har de 3 tæller, kan vi bruge disse forespørgsler på flere måder. Hvis du kun vil beregne konverteringsprocenter, så er her SQL-forespørgslen til at beregne konverteringsraten for oprettelse af indkøbskurv

mysql>select 
     (select count(distinct user_id) from shopping_carts 
      where date_added > now() - interval 30 day)
       /
     (select count(*) as signups from signups 
      where date_joined > now() - interval 30 day) * 100 
     as 'Shopping Cart conversion';
+--------------------------+
| Shopping Cart conversion |
+--------------------------+
|                    19.53 |
+--------------------------+

og til køb

mysql> select 
      (select count(distinct user_id) as purchases from purchases 
       where date_purchased > now() - interval 30 day)
       /
      (select count(*) as signups from signups 
       where date_joined > now() - interval 30 day) * 100
      as 'Purchase conversion';
+---------------------+
| Purchase conversion |
+---------------------+
|                6.38 |
+---------------------+

Bonuslæsning:SQL-forespørgsel til sammenligning af produktsalg efter måned

Hvis du vil oprette en konverteringstragt, så er her den kombinerede forespørgsel for at få alle de 3 ovenstående optællinger i en enkelt tabel

mysql>select 'signups' as `funnel stage`, count(*) as `number of users` 
from signups
where date_joined > now() - interval 30 day
UNION
select 'carts' as `funnel stage`,count(distinct user_id) as `number of users` 
from shopping_carts 
where date_added > now() - interval 30 day
UNION
select 'purchases' as `funnel stage`,count(distinct user_id) as `number of users` 
from purchases 
where date_purchased > now() - interval 30 day

+-------------+-----------------+
|funnel stage | number of users |
+-------------+-----------------+
|  signups    |      2130       |
|  carts      |       416       |
|  purchases  |       136       |
+-------------+-----------------+

For at beregne konverteringsraten kan du nemt plotte disse tal på et søjlediagram eller et tragtdiagram ved hjælp af et diagramværktøj. Her er et eksempel på ovenstående data plottet i et søjlediagram ved hjælp af Ubiq.

Her er et eksempel på de samme data plottet ved hjælp af en konverteringstragt ved hjælp af Ubiq.

Hvis du vil oprette diagrammer, dashboards og rapporter fra MySQL-databasen, kan du prøve Ubiq. Vi tilbyder en 14-dages gratis prøveperiode.

  1. LOCALTIMESTAMP Eksempler – MySQL

  2. Hvordan bruger jeg CONCAT-funktionen i SQL Server 2008 R2?

  3. Forespørgselsydelsesoptimering i MySQL

  4. Hvordan får man det sidste indsatte id?