Loja - Todos os Dados - A Vista - Contratos - Pedidos Anteriores - Pedidos Atuais - Diferença
L01 - 2525,00 - 25,00 - 2500,00 - 0,00 - 0,00 - 0,00
L02 - 1300,00 - 0,00 - 1325,00 - 25,00 - 0,00 - 0,00
Algumas particularidades:
1 - Os A vista e Contratos são apenas os faturados do mês informado
2 - Todos os dados não faz diferença entre os faturados e não faturados
3 - Pedidos Anteriores: São os vendidos no mês anterior e faturados no mês atual
4 - Pedidos Atuais: São os faturados e vendidos no mês atual
5 - A diferença é calculada da seguinte forma:
(A Vista + Contratados) - Todos - Pedidos Anteriores + Pedidos Atuais
Cheguei na seguinte conclusão:
select C.LOJA,
nvl(sum(C.VlrCurso), 0) Oracle,
nvl((SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'S'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '10/2009'
AND LENGTH(CONTRATO) < 9
AND C.LOJA = LOJA
GROUP BY LOJA),
0) VV,
nvl((SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'S'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '10/2009'
AND LENGTH(CONTRATO) >= 9
AND C.LOJA = LOJA
GROUP BY LOJA),
0) CONTRATOS,
nvl((SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'N'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '09/2009'
AND C.LOJA = LOJA
GROUP BY LOJA),
0) PEDIDOS_ANTIGOS,
nvl((SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'N'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '10/2009'
AND C.LOJA = LOJA
GROUP BY LOJA),
0) PEDIDOS_ATUAIS,
(((SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'S'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '10/2009'
AND LENGTH(CONTRATO) < 9
AND C.LOJA = LOJA
GROUP BY LOJA) +
(SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'S'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '10/2009'
AND LENGTH(CONTRATO) >= 9
AND C.LOJA = LOJA
GROUP BY LOJA)) - SUM(C.VLRCURSO) -
(SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'N'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '09/2009'
AND C.LOJA = LOJA
GROUP BY LOJA) + (SELECT SUM(VLRCURSO)
FROM CYBELAR_CRESCABR
WHERE FATURADO = 'N'
AND TO_CHAR(DTVENDA, 'MM/YYYY') = '10/2009'
AND C.LOJA = LOJA
GROUP BY LOJA)) CONFERENCIA
from cybelar_crescabr C
where Faturado = 'S'
and to_char(dtvenda, 'MM/yyyy') = '10/2009'
group by Loja
ORDER BY LOJA
alguém poderia me dar uma luz?