Saudações a todos.
Tenho a seguinte tabela tb_Venda com as seguintes colunas:
- Cod_Cliente
- Cliente
- Data_Venda
- V_Tot
- Grupo
- StatusVenda
Suponhamos que esta tabela esteja preenchida da seguinte maneira:
Cod_Cliente Cliente Dt_Venda V_Total Grupo
001 JOAO 15/01/2007 150,00 010
001 JOAO 20/01/2007 200,00 010
001 JOAO 21/01/2007 300,00 010
002 MARIA 15/01/2007 200,00 011
002 MARIA 20/01/2007 200,00 011
001 MARIA 21/01/2007 200,00 011
Em um relatório quero apresentar os seguintes resultados:
Item 1 - A soma das vendas ocorridas entre 20/01/2007 e 21/01/2007
Item 2 - A soma das vendas ocorridas no período anterior a 20/01/2007
Item 3 - A soma das vendas dos itens 1 e 2.
Teria que aparecer no relatório algo como:
CLIENTE VL (item 1) VL (item2) VL (item3)
JOAO 500,00 150,00 650,00
MARIA 400,00 200,00 600,00
Tentei fazer como na query apresentada abaixo, mas o resultado do Item2 não é satisfatório:
SELECT COD_CLIENTE, CLIENTE, SUM([V_TOT]) AS TOTAL1, (SELECT SUM([V_TOT]) FROM TB_VENDA WHERE STATUSVENDA = 'PENDENTE' AND GRUPO ='1' AND DATA_VENDA BETWEEN #01-01-2000# AND #30-01-2007#)AS TOTAL2, (TOTAL1 + TOTAL2) AS TOTAL3 FROM TB_VENDA WHERE DATA_VENDA BETWEEN #01-01-2000# AND #31-12-2007# AND GRUPO = '1' AND STATUSVENDA = 'PENDENTE' GROUP BY COD_CLIENTE, CLIENTE
O RESULTADO RETORNADO FOI:
CLIENTE VL (item 1) VL (item2) VL (item3)
JOAO 500,00 350,00 850,00
MARIA 400,00 350,00 750,00
Notem que no valor do item2 ele não separa por cliente e sim faz a soma de todas as vendas que estão atendendo aos critérios informados, quando o certo era somar por cliente, dentro das condições estabelecidas.