Array
(
)

Como montar SQL

Felipeiw
   - 05 nov 2005

Preciso montar uma consulta, que agrupe os pedidos do mesmo cliente, totalize os produtos (qnt*prepro), por periodo.

Estou utilizando Firebird TSQLQuery+Provider+ClientDataset, onde mh tabela

Alguem poderia me ajudar.
Abs


Firekiller
   - 05 nov 2005

tenta aí:

#Código

Select 
Cod_Cliente,
Cod_Produto,
Qnt, Prepro,
SUM(Qnt * Prepro) as Total
From
Tabela
Where Data between :DataIni and :DataFim
Group By Cod_Cliente



Emerson
   - 08 nov 2005

#Código

Select
CLI.Cod_Cliente,
CLI.Nome,
SUM(TP.Qnt * TP.Prepro) as Total
From
TabelaPedido TP
left join
Cliente CLI on (CLI.Cod_Cliente=TP.Cod_Cliente)
Where
TP.DataPedido between :DataIni and :DataFim
Group By
CLI.Cod_Cliente, CLI.Nome


se houver uma tabela de itens de pedido:

#Código
Select
CLI.Cod_Cliente,
CLI.Nome,
SUM(TI.Qnt * TI.Prepro) as Total
From
TabelaPedido TP
inner join
TabelaPedidoItem TI on (TI.Numero_Pedido=TP.Numero_Pedido)
left join
Cliente CLI on (CLI.Cod_Cliente=TP.Cod_Cliente)
Where
TP.Data_Pedido between :DataIni and :DataFim
Group By
CLI.Cod_Cliente, CLI.Nome