Inquiridor
Soma Acumulada: Faturamento x Dia

Pergunta
-
Olá, tudo bem pessoal?
Sou novato ainda em SQL e estou tendo dificuldade em gerar um script SQL que me retorne o faturamento acumulado por dia (do mês atual).O que eu preciso:
Dia Soma
1 6000
2 12000
3 32000
4 41000
Abaixo segue o script que estou fazendo. Este está me retornando apenas uma soma do faturamento diário, mas não está acumulando dia após dia.
SELECT DATE_FORMAT(approved_at,"%d") AS 'Dia', SUM(value) AS 'Soma' FROM ad_sales WHERE approved_at IS NOT NULL AND chargeback_at IS NULL AND DATE(approved_at) BETWEEN DATE(CURDATE() - INTERVAL 31 DAY) AND DATE(CURDATE() - INTERVAL 1 DAY) GROUP BY Dia ORDER BY Dia ASC "LEGENDA: approved_at: data do pagamento aprovado value: coluna do valor ad_sales: tabela chargeback_at: se o valor não foi estornado, o campo é vazio "
Todas as Respostas
-
-
-
Não sei se vai funcionar porque para obter uma soma acumulada em uma consulta SQL é necessário utilizar funções específicas do banco de dados, e dependendo do BD utilizado e da versão elas podem não estar disponíveis, mas segue uma sugestão para testes:
SUM(value) OVER(ORDER BY DATE_FORMAT(approved_at,"%d")) AS 'Soma'
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
-
Jean,
Como estão definidos os seus dados? No que se refere a questão do Faturamento, você poderia detalhar a maneira que você trabalha atualmente.
Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]