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

Como obter novos usuários por dia no MySQL


É muito importante obter a contagem de novos usuários por dia para cada negócio. Você pode usá-lo para contar novos usuários diariamente, analisar o número total de usuários registrados por data e até mesmo criar relatórios diários. Veja como obter novos usuários por dia no MySQL.


Como conseguir novos usuários por dia no MySQL


Aqui estão as etapas para obter novos usuários por dia no MySQL. Você pode usá-lo para contar usuários registrados por dia.

Digamos que você tenha uma tabela users(user_id, date_joined) que armazena todos os IDs de usuário junto com a data de ingresso/registro/inscrição.
mysql> create table users(date_joined date,user_id int);

mysql> insert into users(date_joined,user_id)
       values('2020-04-28',213),
       ('2020-04-28',214),
       ('2020-04-30',215),
       ('2020-04-28',216),
       ('2020-04-28',217),
       ('2020-04-30',218),
       ('2020-04-28',219),
       ('2020-04-28',220),
       ('2020-04-30',221),
       ('2020-05-01',222),
       ('2020-05-01',222),
       ('2020-05-01',223),
       ('2020-05-04',224),
       ('2020-05-04',225),
       ('2020-05-04',226),
       ('2020-05-04',226),
       ('2020-05-04',227),
       ('2020-05-04',228),
       ('2020-05-05',229),
       ('2020-05-05',230),
       ('2020-05-05',231),
       ('2020-05-05',232),
       ('2020-05-06',233),
       ('2020-05-06', 234);

mysql> select * from users;
+-------------+---------+
| date_joined | user_id |
+-------------+---------+
| 2020-04-28  |     213 |
| 2020-04-28  |     214 |
| 2020-04-30  |     215 |
| 2020-04-28  |     216 |
| 2020-04-28  |     217 |
| 2020-04-30  |     218 |
| 2020-04-28  |     219 |
| 2020-04-28  |     220 |
| 2020-04-30  |     221 |
| 2020-05-01  |     222 |
| 2020-05-01  |     222 |
| 2020-05-01  |     223 |
| 2020-05-04  |     224 |
| 2020-05-04  |     225 |
| 2020-05-04  |     226 |
| 2020-05-04  |     226 |
| 2020-05-04  |     227 |
| 2020-05-04  |     228 |
| 2020-05-05  |     229 |
| 2020-05-05  |     230 |
| 2020-05-05  |     231 |
| 2020-05-05  |     232 |
| 2020-05-06  |     233 |
| 2020-05-06  |     234 |
+-------------+---------+

Bônus de leitura:Como obter dados de vendas dos últimos 3 meses no MySQL

Neste caso, você tem apenas 1 registro por usuário para que você possa facilmente obter novos usuários no MySQL fazendo uma contagem de data no SQL. Aqui está a consulta SQL para contar registros por dia no MySQL.
mysql> select date(date_joined),count(user_id) 
       from users 
       group by date(date_joined);
+-------------------+----------------+
| date(date_joined) | count(user_id) |
+-------------------+----------------+
| 2020-04-28        |        6       |
| 2020-04-30        |        3       |
| 2020-05-01        |        3       |
| 2020-05-04        |        6       |
| 2020-05-05        |        4       |
| 2020-05-06        |        2       |
+-------------------+----------------+

Na consulta acima, simplesmente usamos uma função agregada DATE para contar o número diário de usuários registrados.

Bônus de leitura:Como obter registros do mês atual no MySQL

Se você deseja filtrar dados com base em condições específicas, pode adicionar uma cláusula WHERE, conforme mostrado abaixo.
mysql> select date(date_joined),count(*) 
       from users 
       WHERE <condition>
       group by date(date_joined);



Bônus de leitura:Como importar arquivo CSV para o MySQL Workbench

Se você também deseja calcular o total de usuários cumulativos por dia, aqui está a consulta SQL para obter novos usuários por dia no MySQL. Usaremos o resultado da consulta acima como entrada para calcular o número total de novos usuários registrados por dia.
mysql> set @csum := 0;

mysql> select date_joined,new_users, (@csum := @csum + new_users) as total_users
            from (
             select date(date_joined) as date_joined,count(user_id) as new_users
             from users
             group by date(date_joined)
            ) as temp
            order by date_joined;
+-------------+-----------+-------------+
| date_joined | new_users | total_users |
+-------------+-----------+-------------+
| 2020-04-28  |         6 |           6 |
| 2020-04-30  |         3 |           9 |
| 2020-05-01  |         3 |          12 |
| 2020-05-04  |         6 |          18 |
| 2020-05-05  |         4 |          22 |
| 2020-05-06  |         2 |          24 |
+-------------+-----------+-------------+

Na consulta acima, definimos uma variável temporária csum como 0. Então, para cada linha, a usamos para calcular e armazenar a soma cumulativa da contagem de usuários.

Depois de obter novos usuários no MySQL, você pode plotá-lo em um gráfico de linhas ou painel usando uma ferramenta de relatório como o Ubiq e compartilhá-lo com sua equipe. Aqui está um gráfico de linhas criado usando o Ubiq.





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