sql >> Databasteknik >  >> RDS >> Mysql

Hur man beräknar total försäljning per månad i MySQL?

Månadsvis försäljning är ett mycket användbart KPI-mått för företag att spåra, för varje företag. Det hjälper dig att förstå hur dina marknadsföringskampanjer och initiativ påverkar din försäljning, identifiera försäljningsperiodicitet och upptäcka fluktuationer. Om din data lagras i en databas kan du enkelt beräkna månatlig försäljningsrapport i SQL. Så här beräknar du total försäljning per månad i MySQL. Du kan också använda den för att få månadsvis data i MySQL.

Hur beräknar man total försäljning per månad i MySQL?

Här är stegen för att beräkna total försäljning per månad i MySQL. Låt oss säga att du har följande tabell försäljning(orderdatum, rea) som lagrar försäljningsdata.

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älj * från försäljningen;+----- -------+------+| order_date | rea |+------------+------+| 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 || ... | ...|+------------+------+

Beräkna månatlig försäljningsrapport i MySQL

MySQL tillhandahåller MÅNAD- och ÅR-funktioner som låter dig beräkna månad respektive år från ett datum. Vi kommer att använda dessa 2 funktioner för att beräkna total försäljning per månad i MySQL.

mysql> välj år(orderdatum), månad(orderdatum),summa(försäljning) från försäljningsgrupp efter år(order_datum), månad(order_datum) order efter år(order_datum), månad(order_datum);+-----------------+----- --------------+-----------+| år(order_datum) | månad(order_datum) | summa(försäljning) |+-------------------+------------------------+----- ------+| 2020 | 1 | 408 || 2020 | 2 | 320 || 2020 | 3 | 540 || ... | ... | ... |+-------------------+-------------------+------ -----+

Ovanstående fråga använder SUM-funktionen som hjälper dig att summera den totala försäljningen varje månad. Om du bara vill ha en total räkning av försäljning varje månad, kan du använda COUNT-funktionen istället.

mysql> välj år(order_datum), månad(order_datum),antal(rea) från försäljningsgrupp efter år(order_datum), månad(order_datum) order efter år(order_datum), månad(order_datum);+-----------------+----- --------------+-----------+| år(order_datum) | månad(order_datum) | summa(försäljning) |+-------------------+------------------------+----- ------+| 2020 | 1 | 18 || 2020 | 2 | 10 || 2020 | 3 | 21 || ... | ... | ... |+-------------------+-------------------+------ -----+

Om du vill filtrera data som används för att beräkna total försäljning per månad i MySQL, så kan du göra det med hjälp av WHERE-satsen, som visas nedan i fetstil

mysql> välj år(order_datum), månad(order_datum), summa(försäljning) från försäljning WHERE skick gruppera efter år(order_datum), månad(order_datum) sortera efter år(order_datum), månad(order_datum);

På samma sätt kan du också beräkna genomsnittlig försäljning per vecka och genomsnittlig försäljning per dag i MySQL.

Om du har försäljningsdata för flera produkter i din tabellförsäljning (produkt, order_datum, rea), kan du beräkna månadsförsäljningen för varje produkt genom att uppdatera GROUP BY- och ORDER BY-klausulerna

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älj * från försäljningen;+---------+------------+------+| produkt | order_date | rea |+--------+------------+------+| 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älj produkt, year(order_date),month(order_date),sum(rea) från försäljningsgrupp efter produkt, year(order_date),month(order_date) order by product, year(order_date),month(order_date);+--------+------------------------+---------- ----------+-----------+| produkt | år(order_datum) | månad(order_datum) | summa(försäljning) |+---------+------------------+-------------------- ----+-----------+| A | 2020 | 1 | 70 || B | 2020 | 1 | 40 || ... | ... | ... | ... |+--------+-------------------+---------------- ---+-----------+

Nu när du vet hur du beräknar den totala försäljningen per månad i MySQL, kan du anpassa den enligt dina krav.

Bonusläsning: Hur man beräknar procentuell tillväxt månad för månad i MySQL

För att kartlägga månadsförsäljningsdata kommer vi att ändra vår tidigare SQL-fråga något för att få månadsnamn med funktionen DATE_FORMAT, istället för att använda år- och månadsnummer

mysql> välj date_format(order_date,'%M') ,sum(rea) från försäljningsgrupp efter år(orderdatum),månad(orderdatum) order efter år(orderdatum),månad(orderdatum);+------------------- ----------+-----------+| date_format(order_date,'%M') | summa(försäljning) |+-------------------------------------+-----------+| januari | 408 || februari | 320 || mars | 540 || ... | ... |+-------------------------------------+-----------+ 

När du har beräknat den totala försäljningen per månad i MySQL kan du plotta månatlig försäljning på ett stapeldiagram med hjälp av ett diagramverktyg. Här är ett exempel på ett månadsförsäljningsdiagram skapat med Ubiq

Förresten, om du vill skapa försäljningsdiagram &dashboards från MySQL-databasen kan du prova Ubiq. Vi erbjuder en 14-dagars gratis provperiod.

  1. hur ändrar man en befintlig kontrollbegränsning?

  2. Returnera tabelltyp från en funktion i PostgreSQL

  3. Hur man installerar Apache Cassandra på Ubuntu 20.10/Ubuntu 20.04

  4. Hur vet man om MySQLnd är den aktiva drivrutinen?