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

Hvordan beregner man det samlede salg pr. måned i MySQL?

Månedsmæssigt salg er et meget nyttigt forretnings-KPI-mål at spore for enhver virksomhed. Det hjælper dig med at forstå, hvordan dine marketingkampagner og -initiativer påvirker dit salg, identificere salgsperiodicitet og spotte udsving. Hvis dine data er gemt i en database, kan du nemt beregne månedlig salgsrapport i SQL. Sådan beregner du det samlede salg pr. måned i MySQL. Du kan også bruge det til at få månedlige data i MySQL.

Hvordan beregner man det samlede salg pr. måned i MySQL?

Her er trinene til at beregne det samlede salg pr. måned i MySQL. Lad os sige, at du har følgende tabel salg(ordre_dato, udsalg) der gemmer salgsdata.

mysql>create table sales(order_date date,sale int);mysql>insert into sales(order_date,sale) values('2020-01-01',10),('2020-01-02',12) ,('2020-01-03',15), ('2020-01-04',11),('2020-01-05',13),('2020-01-06',9), ( '2020-01-07',21),('2020-01-08',10),('2020-01-09',10), ('2020-01-10',2),('2020 -01-11',16),('2020-01-12',12), ('2020-01-13',10),('2020-01-14',18),('2020-01 -15',15), ('2020-01-16',12),('2020-01-17',10),('2020-01-18',18), ('2020-01-19 ',14),('2020-01-20',16),('2020-01-21',12), ('2020-01-22',21),('2020-01-23', 13),('2020-01-24',15), ('2020-01-25',20),('2020-01-26',14),('2020-01-27',16) , ('2020-01-28',15),('2020-01-29',10),('2020-01-30',18);mysql>vælg * fra salg;+----- -------+------+| ordre_dato | udsalg |+------------+------+| 01-01-2020 | 10 || 2020-01-02 | 12 || 03-01-2020 | 15 || 2020-01-04 | 11 || 2020-01-05 | 13 || 2020-01-06 | 9 || 2020-01-07 | 21 || 2020-01-08 | 10 || 2020-01-09 | 10 || ... | ...|+------------+------+

Beregn månedlig salgsrapport i MySQL

MySQL giver funktioner MÅNED og ÅR, der giver dig mulighed for at beregne henholdsvis måned og år fra en dato. Vi vil bruge disse 2 funktioner til at beregne det samlede salg pr. måned i MySQL.

mysql> vælg år(ordre_dato), måned(ordre_dato),sum(udsalg) fra salgsgruppe efter år(ordre_dato), måned(ordre_dato) ordre efter år(ordre_dato), måned(ordre_dato);+-----------------+----- --------------+-----------+| år(ordre_dato) | måned(ordre_dato) | sum(udsalg) |+-------------------+-----------------+----- ------+| 2020 | 1 | 408 || 2020 | 2 | 320 || 2020 | 3 | 540 || ... | ... | ... |+-------------------+-------------------+------ -----+

Ovenstående forespørgsel bruger SUM-funktionen, som hjælper dig med at opsummere det samlede salg hver måned. Hvis du kun ønsker en samlet optælling af salg hver måned, så kan du bruge COUNT-funktionen i stedet for.

mysql> vælg år(ordre_dato), måned(ordre_dato),antal(udsalg) fra salgsgruppe efter år(ordre_dato), måned(ordre_dato) ordre efter år(ordre_dato), måned(ordre_dato);+-----------------+----- --------------+-----------+| år(ordre_dato) | måned(ordre_dato) | sum(udsalg) |+-------------------+-----------------+----- ------+| 2020 | 1 | 18 || 2020 | 2 | 10 || 2020 | 3 | 21 || ... | ... | ... |+-------------------+-------------------+------ -----+

Hvis du vil filtrere de data, der bruges til at beregne det samlede salg pr. måned i MySQL, så kan du gøre det ved hjælp af WHERE-klausulen, som vist nedenfor med fed

mysql> vælg år(ordre_dato), måned(ordre_dato), sum(salg) fra salg WHERE tilstand gruppe efter år(ordre_dato), måned(ordre_dato) rækkefølge efter år(ordre_dato), måned(ordre_dato);

På samme måde kan du også beregne det gennemsnitlige salg pr. uge og det gennemsnitlige salg pr. dag i MySQL.

Hvis du har salgsdata for flere produkter i din tabelsalg (produkt, ordre_dato, udsalg), så kan du beregne det månedlige salg for hvert produkt ved at opdatere GROUP BY og ORDER BY klausulerne

mysql> create table sales(product varchar(255),order_date date,sale int);mysql> insert into sales values('A','2020-01-01',20),('B',' 2020-01-02',25),('B','2020-01-03',15),('A','2020-01-04',30),('A','2020- 01-05',20);mysql> vælg * fra udsalg;+--------+------------+------+| produkt | ordre_dato | udsalg |+--------+------------+------+| A | 01-01-2020 | 20 || B | 2020-01-02 | 25 || B | 03-01-2020 | 15 || A | 2020-01-04 | 30 || A | 2020-01-05 | 20 |+---------+------------+------+mysql> vælg produkt, år(ordre_dato), måned(ordre_dato), sum(salg) fra salgsgruppe efter produkt, year(order_date),month(order_date) ordre efter produkt, år(ordre_dato), måned(ordre_dato);+--------+------------------+---------- ----+-----------+| produkt | år(ordre_dato) | måned(ordre_dato) | sum(udsalg) |+--------+-------------------+-------------------- ----+-----------+| A | 2020 | 1 | 70 || B | 2020 | 1 | 40 || ... | ... | ... | ... |+--------+------------------+---------------- ---+-----------+

Nu hvor du ved, hvordan du beregner det samlede salg pr. måned i MySQL, kan du tilpasse det efter dit behov.

Bonuslæser: Sådan beregner du vækst i procent måned for måned i MySQL

For at kortlægge månedlige salgsdata vil vi ændre vores tidligere SQL-forespørgsel en smule for at få månedsnavne ved hjælp af DATE_FORMAT-funktionen i stedet for at bruge år- og månedstal

mysql> vælg date_format(order_date,'%M') ,sum(udsalg) fra salgsgruppe efter år(ordre_dato), måned(ordre_dato) ordre efter år(ordre_dato), måned(ordre_dato);+------------------- ----------+-----------+| dato_format(ordre_dato,'%M') | sum(salg) |+-------------------------------------+----------+| januar | 408 || februar | 320 || marts | 540 || ... | ... |+-------------------------------------+-----------+ 

Når du har beregnet det samlede salg pr. måned i MySQL, kan du plotte det månedlige salg på et søjlediagram ved hjælp af et diagramværktøj. Her er et eksempel på en månedlig salgsgraf, der er oprettet ved hjælp af Ubiq

Forresten, hvis du vil oprette salgsdiagrammer &dashboards fra MySQL-databasen, kan du prøve Ubiq. Vi tilbyder en 14-dages gratis prøveperiode.

  1. Optimer gruppevis maksimal forespørgsel

  2. Betinget splittransformation:Eksporter data fra SQL Server til Oracle- og MySQL-databaser

  3. SQL NOT IN virker ikke

  4. Forskellen mellem VARCHAR2(10 CHAR) og NVARCHAR2(10)