Query para exibir total de inscrições por semana
Olá pessoal,
Preciso montar um relatório que mostra a quantidade de inscrições por semana até uma determinada data, a query abaixo está funcionando bem:
------ Primeiro dia do evento ---------------- #
SET @dia_evento = '2015-03-20';
---------------------------------------------- #
SELECT WEEK( @dia_evento ) - WEEK(IFNULL(datacriacao, @dia_evento )) AS semanas_antes,
COUNT(*) AS total_inscritos
FROM tabela_inscricoes
GROUP BY semanas_antes DESC
Observem que temos a variável que indica o dia em que o evento começa, então a query mostra a "evolução" semana a semana. Mas tenho um problema: quando o ano "vira"... Nós temos alguns eventos cujas inscrições começam em um ano mas o evento é só no ano seguinte (por exemplo, as inscrições foram abertas em novembro de 2014 e o evento aconteceu em março de 2015) e não consigo mostrar os números...
Quando isso acontece, esse é o resultado obtido:
+---------+---------------+
| Semanas | Quantidade |
| Antes | de inscrições |
+---------+---------------+
| 15 | 13 |
| 14 | 45 |
| 13 | 98 |
| 12 | 151 |
| 11 | 135 |
| 10 | 823 |
| 9 | 1059 |
| 8 | 663 |
| 7 | 1217 |
| 6 | 1610 |
| 5 | 1906 |
| 4 | 2016 |
| 3 | 3007 |
| 2 | 2705 |
| 1 | 7709 |
| 0 | 5354 |
| -35 | 1 |
| -36 | 7 |
| -37 | 11 |
+---------+---------------+
Alguém sabe uma forma de conseguir contornar essa situação?
Discussão (11)
Carregando comentários...