Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como calcular as vendas médias por semana no MySQL


Vendas médias por semana é uma métrica útil para todos os negócios, independentemente do setor em que você trabalha. Dá uma boa ideia de como está o seu negócio e em um período de tempo razoável. Também ajuda a suavizar o ruído presente nos números de vendas do dia-a-dia. Veja como calcular as vendas médias por semana no MySQL.


Como calcular a média de vendas por semana no MySQL


Existem várias maneiras de calcular as vendas médias por semana no MySQL. Veremos cada um deles

Digamos que você tenha uma tabela com dados de vendas diárias vendas(data_pedido,venda)
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 |
| ...        |   ...|
+------------+------+

Calcular vendas médias por semana no MySQL


O MySQL fornece uma função interna WEEK para retornar o número WEEK do ano. Você pode calcular facilmente as vendas médias por semana no MySQL usando a cláusula GROUP BY e a função AVG, conforme mostrado abaixo.
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 |
+------------------+-----------+

Você pode embelezar seu resultado usando as funções CONCAT e ROUND – CONCAT pode ser usado para concatenar strings personalizadas para números de semanas, e a função ROUND pode ser usada para arredondar valores médios. Aqui está um exemplo,
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 |
+--------+--------------+



Bônus de leitura: Como calcular a porcentagem de crescimento mês a mês no MySQL

Se sua tabela tiver mais colunas, cujas médias você deseja calcular, basta adicioná-las à sua consulta conforme mostrado abaixo em negrito
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);



Se você deseja adicionar filtros à sua consulta, pode adicionar uma cláusula WHERE à sua consulta, conforme mostrado abaixo
mysql> select week(order_date),avg(sale) from sales WHERE <condition here>
    -> group by week(order_date);



Bônus de leitura: Como calcular o total de vendas por mês no MySQL?

A função Week do MySQL fornece várias maneiras de calcular dados semanais. Sua sintaxe é

SEMANA(dataprimeiro diadasemana )

firstdayofweek é opcional e pode assumir os seguintes valores
Valor da opção Primeiro dia da semana Intervalo A semana 1 é a primeira semana…
0 Domingo 0-53 com um domingo neste ano
1 Segunda-feira 0-53 com mais de 3 dias este ano
2 Domingo 1-53 com um domingo neste ano
3 Segunda-feira 1-53 com mais de 3 dias este ano
4 Domingo 0-53 com mais de 3 dias este ano
5 Segunda-feira 0-53 com uma segunda-feira neste ano
6 Domingo 1-53 com mais de 3 dias este ano
7 Segunda-feira 1-53 com uma segunda-feira neste ano

O valor padrão é 0.



Ao calcular as vendas médias por semana no MySQL, tenha cuidado ao usar o segundo argumento na função WEEK. Se não for usado corretamente, você pode acabar calculando mal os números médios.

Por fim, você pode usar uma ferramenta de relatório para traçar as vendas médias por semana em um painel e compartilhá-lo com sua equipe. Aqui está um exemplo de gráfico de barras mostrando vendas médias por semana, criado usando Ubiq.







Se você deseja criar gráficos de vendas, painéis e relatórios do banco de dados MySQL, experimente o Ubiq. Oferecemos um teste gratuito de 14 dias.