sql >> Database >  >> RDS >> Mysql

Hoe de gemiddelde verkoop per week te berekenen in MySQL

Gemiddelde verkoop per week is een nuttige maatstaf voor elk bedrijf, ongeacht in welke branche u werkt. Het geeft een goed beeld van hoe uw bedrijf ervoor staat en over een redelijk tijdsbestek. Het helpt ook om het lawaai van de dagelijkse verkoopcijfers te verzachten. Hier leest u hoe u de gemiddelde verkoop per week in MySQL kunt berekenen.

De gemiddelde verkoop per week berekenen in MySQL

Er zijn meerdere manieren om de gemiddelde verkoop per week in MySQL te berekenen. We zullen ze allemaal bekijken

Stel dat u een tabel heeft met dagelijkse verkoopgegevens sales(order_date,sale)

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>select * from sales;
+------------+------+
| order_date | sale |
+------------+------+
| 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 |
| ...        |   ...|
+------------+------+

Bereken de gemiddelde verkoop per week in MySQL

MySQL biedt een ingebouwde functie WEEK om het WEEK-nummer van het jaar te retourneren. U kunt eenvoudig de gemiddelde verkoop per week in MySQL berekenen met behulp van de GROUP BY-clausule en de AVG-functie, zoals hieronder weergegeven.

mysql> select week(order_date),avg(sale) from sales
    -> group by week(order_date);
+------------------+-----------+
| week(order_date) | avg(sale) |
+------------------+-----------+
|                0 |   12.0000 |
|                1 |   11.5714 |
|                2 |   13.5714 |
|                3 |   15.8571 |
|                4 |   14.6000 |
+------------------+-----------+

U kunt uw resultaat verfraaien door de functies CONCAT en ROUND te gebruiken. CONCAT kan worden gebruikt om aangepaste reeksen aan weeknummers samen te voegen en de functie ROUND kan worden gebruikt om gemiddelde waarden af ​​te ronden. Hier is een voorbeeld,

mysql> select concat('Week ',week(order_date)) as 'Week',round(avg(sale),2) as 'Average Sale'
 from sales group by week(order_date);
+--------+--------------+
| Week   | Average Sale |
+--------+--------------+
| Week 0 |        12.00 |
| Week 1 |        11.57 |
| Week 2 |        13.57 |
| Week 3 |        15.86 |
| Week 4 |        14.60 |
+--------+--------------+

Bonus lezen: Hoe bereken je het groeipercentage van maand tot maand in MySQL

Als uw tabel meer kolommen heeft waarvan u de gemiddelden wilt berekenen, kunt u deze eenvoudig aan uw zoekopdracht toevoegen, zoals hieronder vetgedrukt weergegeven

mysql> select concat('Week ',week(order_date)) as 'Week',round(avg(sale),2) as 'Average Sale'
,round(avg(goal),2) as 'Average Goals',round(avg(revenue),2) as 'Average Revenue'
 from sales group by week(order_date);

Als u filters aan uw zoekopdracht wilt toevoegen, kunt u een WHERE-clausule aan uw zoekopdracht toevoegen, zoals hieronder weergegeven

mysql> select week(order_date),avg(sale) from sales WHERE <condition here>
    -> group by week(order_date);

Bonus lezen: Hoe bereken je de totale omzet per maand in MySQL?

De Week-functie van MySQL biedt meerdere manieren om wekelijkse gegevens te berekenen. De syntaxis is

WEEK(datumfirstdayofweek )

firstdayofweek is optioneel en kan de volgende waarden aannemen

Optiewaarde Eerste dag van de week Bereik Week 1 is de eerste week …
0 Zondag 0-53 met een zondag in dit jaar
1 Maandag 0-53 met meer dan 3 dagen dit jaar
2 Zondag 1-53 met een zondag in dit jaar
3 Maandag 1-53 met meer dan 3 dagen dit jaar
4 Zondag 0-53 met meer dan 3 dagen dit jaar
5 Maandag 0-53 met een maandag in dit jaar
6 Zondag 1-53 met meer dan 3 dagen dit jaar
7 Maandag 1-53 met een maandag in dit jaar

Standaardwaarde is 0.

Wanneer u de gemiddelde verkoop per week in MySQL berekent, wees dan voorzichtig bij het gebruik van het tweede argument in de WEEK-functie. Als het niet goed wordt gebruikt, kan het zijn dat u de gemiddelde cijfers verkeerd berekent.

Ten slotte kunt u een rapportagetool gebruiken om de gemiddelde verkoop per week op een dashboard in kaart te brengen en te delen met uw team. Hier is een voorbeeld van een staafdiagram met de gemiddelde verkoop per week, gemaakt met Ubiq.

Als u verkoopgrafieken, dashboards en rapporten wilt maken vanuit de MySQL-database, kunt u Ubiq proberen. We bieden een gratis proefperiode van 14 dagen.

  1. Weken aftrekken van een datum in PostgreSQL

  2. Hoe programmeer je een MySQL-trigger om een ​​rij in een andere tabel in te voegen?

  3. Database corruptie

  4. Hoe weet ik wanneer mijn docker mysql-container actief is en mysql klaar is om vragen te beantwoorden?