sql >> Databáze >  >> RDS >> Mysql

Jak vypočítat průměrný prodej za týden v MySQL

Průměrný prodej za týden je užitečná metrika pro každou firmu, bez ohledu na to, v jakém odvětví pracujete. Poskytuje dobrou představu o tom, jak si vaše firma vede, a to v rozumném časovém rámci. Pomáhá také vyhladit hluk současných každodenních prodejních čísel. Zde je návod, jak vypočítat průměrné tržby za týden v MySQL.

Jak vypočítat průměrný týdenní prodej v MySQL

Existuje několik způsobů, jak vypočítat průměrné tržby za týden v MySQL. Podíváme se na každý z nich

Řekněme, že máte tabulku s denními údaji o prodeji prodej (datum_objednávky, prodej)

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 |
| ...        |   ...|
+------------+------+

Vypočítejte průměrné tržby za týden v MySQL

MySQL poskytuje vestavěnou funkci WEEK, která vrací číslo WEEK v roce. Můžete snadno vypočítat průměrné tržby za týden v MySQL pomocí klauzule GROUP BY a funkce AVG, jak je uvedeno níže.

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 |
+------------------+-----------+

Svůj výsledek můžete zkrášlit pomocí funkcí CONCAT a ROUND – CONCAT lze použít ke spojení vlastních řetězců s čísly týdnů a funkci ROUND lze použít k zaokrouhlení průměrných hodnot. Zde je příklad,

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 |
+--------+--------------+

Bonusové čtení: Jak vypočítat procentuální růst po měsíci v MySQL

Pokud má vaše tabulka více sloupců, jejichž průměry chcete vypočítat, můžete je jednoduše přidat do dotazu, jak je uvedeno níže tučně

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);

Pokud chcete do svého dotazu přidat filtry, můžete do dotazu přidat klauzuli WHERE, jak je uvedeno níže

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

Bonusové čtení: Jak vypočítat celkový prodej za měsíc v MySQL?

Funkce Week MySQL poskytuje několik způsobů, jak vypočítat týdenní data. Jeho syntaxe je

WEEK(datumprvní den týdne )

firstdayofweek je volitelný a může nabývat následujících hodnot

Hodnota možnosti První den týdne Rozsah Týden 1 je první týden…
0 Neděle 0–53 s nedělí v tomto roce
1 pondělí 0–53 letos více než 3 dny
2 Neděle 1-53 s nedělí v tomto roce
3 pondělí 1-53 letos více než 3 dny
4 Neděle 0–53 letos více než 3 dny
5 pondělí 0–53 s pondělím v tomto roce
6 Neděle 1-53 letos více než 3 dny
7 pondělí 1-53 s pondělím v tomto roce

Výchozí hodnota je 0.

Při výpočtu průměrného prodeje za týden v MySQL buďte opatrní při používání druhého argumentu ve funkci WEEK. Pokud se nepoužívá správně, může dojít ke špatnému výpočtu průměrných čísel.

Nakonec můžete pomocí nástroje pro vytváření sestav vykreslit průměrné tržby za týden na řídicí panel a sdílet je se svým týmem. Zde je příklad sloupcového grafu znázorňujícího průměrné tržby za týden, vytvořeného pomocí Ubiq.

Pokud chcete vytvářet prodejní grafy, dashboardy a reporty z databáze MySQL, můžete zkusit Ubiq. Nabízíme 14denní bezplatnou zkušební verzi.

  1. ORACLE a TRIGGERS (vloženo, aktualizováno, odstraněno)

  2. Záznam vrácený z funkce má zřetězené sloupce

  3. MySQL a MariaDB Query Caching s ProxySQL a ClusterControl

  4. Oracle:Pokud tabulka existuje