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

Estrutura de banco de dados para manter estatísticas por dia, semana, mês, ano


Em vez de atualizar as contagens por dia, semana, etc., basta INSERT uma linha em uma tabela cada vez que uma atividade acontece assim:
insert into activities (activity_date, activity_info) 
values (CURRENT_TIMESTAMP, 'whatever');

Agora seus relatórios são muito simples como:
select count(*) from activities
where activity_date between '2008-01-01' and '2008-01-07';

ou
select YEARWEEK(`activity_date`) as theweek, count(*)
group by theweek