Este é um relatório de painel em versão SQL para emails enviados.
Este relatório fornece um detalhamento diário do número total de e-mails enviados da plataforma Discourse dentro de um intervalo de datas especificado. É útil para monitorar a atividade de e-mail, identificar tendências e garantir que o sistema de e-mail esteja funcionando corretamente.
-- [params]
-- date :start_date
-- date :end_date
SELECT
DATE(created_at) AS date_sent,
COUNT(*) AS total_emails_sent
FROM email_logs
WHERE created_at BETWEEN :start_date AND :end_date
GROUP BY date_sent
ORDER BY date_sent ASC
Explicação da Consulta SQL
A consulta SQL foi projetada para recuperar a contagem de e-mails enviados a cada dia dentro de um período determinado. Aqui está uma explicação passo a passo da consulta:
Parâmetros
A consulta aceita dois parâmetros, :start_date e :end_date, permitindo que o usuário especifique o intervalo de datas para o relatório. Ambos os parâmetros de data aceitam o formato de data AAAA-MM-DD.
Detalhamento da Consulta
DATE(sent_at) AS date_sent: Extrai a parte da data do carimbo de data/horasent_ate rotula a coluna resultante comodate_sent.COUNT(*) AS total_emails_sent: Conta o número total de linhas (e-mails) para cada grupo, rotulando o resultado comototal_emails_sent.FROM email_logs: Esta cláusula indica que os dados serão recuperados da tabelaemail_logs, que registra cada instância de um e-mail sendo enviado.WHERE sent_at BETWEEN :start_date AND :end_date: Esta cláusula filtra os dados para incluir apenas os registros onde o carimbo de data/horasent_atestá dentro do intervalo de datas especificado.GROUP BY date_sent: Esta cláusula agrupa os resultados pela data em que os e-mails foram enviados. Isso é necessário para que a funçãoCOUNTcalcule o total por dia.ORDER BY date_sent ASC: Esta cláusula ordena os resultados em ordem crescente pela colunadate_sent, garantindo que o relatório mostre os dados começando da data mais antiga para a mais recente dentro do intervalo.
Exemplo de Resultados
| date_sent | total_emails_sent |
|---|---|
| 2023-11-19 | 264 |
| 2023-11-20 | 932 |
| 2023-11-21 | 678 |
| 2023-11-22 | 637 |
| 2023-11-23 | 369 |
| … | … |