Fórum Consulta SQL sem duplicar valores #373505

13/08/2009

0

Olá tenho 3 tabelas, Produtos, Itens_Vendas e Vendas, fiz a consulta, exemplo:

´select * from Produtos, Itens_Vendas, Vendas where Produtos.Codigo = Itens_Vendas.Cod_produto and Vendas.Codigo = Itens_Vendas.Cod_Venda and Vendas.Data = 13/08/09´

No dbgrid tenho 4 fields: Produto, QDE, Valor, Total

Ele me retorna os produtos vendidos no dia 13/08/09, só que se ele foi vendido 5 vezes vai ser mostrado 5 vezes.

Aí segue minha dúvida, como faço para agrupar, mostrar o nome do produto somente 1 vez, mas a quantidade real vendida, sendo a soma das QDE do mesmo produto e também o Total sendo o resultado das QDE vezes o Valor.


Cizo2000

Cizo2000

Responder

Posts

13/08/2009

Facc

use o group by <nome_do_campo_que_deseja_agrupar>


Responder

Gostei + 0

13/08/2009

Cizo2000

use o group by <nome_do_campo_que_deseja_agrupar>


Olá Facc, obrigado, mas vc poderia me exemplificar, pois sou meio novato em SQL.


Responder

Gostei + 0

13/08/2009

Cizo2000

use o group by <nome_do_campo_que_deseja_agrupar>


Olá Facc, obrigado, mas vc poderia me exemplificar, pois sou meio novato em SQL.


Responder

Gostei + 0

13/08/2009

Cizo2000

use o group by <nome_do_campo_que_deseja_agrupar>


Olá Facc, obrigado, mas vc poderia me exemplificar, pois sou meio novato em SQL.


Responder

Gostei + 0

13/08/2009

Emerson Nascimento

não faz sentido manter a coluna valor. faz mais sentido manter a coluna da média calculada para o valor.
select
  IV.Cod_produto, P.Descricao,
  Sum(IV.QTDE) Qtde, Sum(IV.ValorUnit) Valor,
  Sum(IV.QTDE*IV.ValorUnit) Total,
  Cast(Sum(IV.QTDE*IV.ValorUnit)/Sum(IV.QTDE) as Numeric(10,4)) Media
from
  Itens_Vendas IV
inner join
  Vendas V on (V.Codigo = IV.Cod_Venda and V.Data = ´13/08/09´)
left join
  Produtos P on (P.Codigo = IV.Cod_produto)
group by
  IV.Cod_produto, P.Descricao

quando se tratar deste tipo de problema, publique a estrutura das tabelas envolvidas, pois não conhecemos os campos que serão necessários para a consulta.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar