Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal.
Estou com uma dúvida na estruturação do select.
Tenho um relatório que está extraindo já informações corretamente, com base no período gerado (inicial e final)
Exemplo de como está hoje:
SELECT D.CATEGORIA, SUM(D.VALOR) AS VALOR_VENDA, D.DATA AS (MES_ANO)
FROM DUAL D
WHERE D.DATA BETWEEN '20210501' AND '20210731'
GROUP BY D.CATEGORIA, D.DATA
Retornando:
Categoria | Valor_venda | Mes_Ano
1 | 1000,00 | 05/2021
1 | 2000,00 | 06/2021
1 | 800,00 | 07/2021
2 | 500,00 | 05/2021
2 | 200,00 | 07/2021
2 | 700,00 | 06/2021
Até ai está tranquilo.
Porém foi solicitado para adicionar uma coluna YTD (Year to data - acumulado do ano) agrupando o valor total da venda do ano do filtro.
Então se foi colocado uma data do período Jan/2020 a Mar/2020, essa nova coluna tem que pegar as vendas do ano inteiro de 2020
E precisa me retornar assim:
Categoria | Valor_venda | Mes_Ano | YTD
1 | 1000,00 | 05/2021 | 15000,00
1 | 2000,00 | 06/2021 | 15000,00
1 | 800,00 | 07/2021 | 15000,00
2 | 500,00 | 05/2021 | 8000,00
2 | 200,00 | 07/2021 | 8000,00
2 | 700,00 | 06/2021 | 8000,00
(Os valores de 15000 e 8000 seria a soma do ano inteiro)
O que consegui pensar seria um subselect que tem o where com data do ano, porém nesse caso retorno mais de um resultado no subselect, não dando para usar...
Qual seria a alternativa que tenho?
Carregando comentários...