Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sérgio Toledo

Selecionar o produto mais vendido em uma tabela

Recommended Posts

Olá pessoal,

 

Estou com a seguinte situação:

 

Tenho uma tabela que grava a venda de produtos e preciso exibir os mais vendidos em ordem.

 

A tabela tem campos como:

 

Produto - Qtd

----------------------------

prod1 - 3

prod2 - 4

prod1 - 2

prod3 - 8

prod1 - 2

 

Neste exemplo de teste temos:

produto 3 que vendeu 8 und.

produto 1 que teve três vendas totalizando 7 und.

produto 2 que vendeu 4 und.

 

Como posso retornar esta ordem de vendas?

Lembrando que teria que multiplicar o produto pela quantidade.

 

Abraço.

 

PS: Moderadores, o título acabou saindo errado, o correto seria: Selecionar os produtos mais vendidos em uma tabela, vocês têm como alterar por favor? Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fagundes esperto, resolveu irmão!

 

Ficou assim:

SELECT id_produto, SUM(quantidade) quantidade FROM permutados
GROUP BY id_produto
ORDER BY quantidade DESC

O pulo do gato está na função SUM(quantidade), não é?!

 

Obrigado e uma abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa, surgiu uma nova necessidade e não estou conseguindo implementar, um Join com uma segunda tabela, meu código ficou assim:

 

SELECT permutados.id_produto, SUM(permutados.quantidade), produtos.nome, produtos.valor 
FROM (permutados) 
JOIN produtos ON permutados.id_produto = produtos.id_produto 
GROUP BY id_produto 
ORDER BY quantidade DESC

Como faço esse Join?

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim :

select a.id_produto, sum(a.quantidade) qtde, b.nome, b.valor from permutados a
inner join produtos b on a.id_produto = b.id_produto
group by a.id_produto
order by qtde desc

 

O erro pode ser que acontece porque o campo id_produto existe em duas tabelas, e você não especificou a tabela no group by

Compartilhar este post


Link para o post
Compartilhar em outros sites

Era isso mesmo, tive o cuidade de especificar a tabela no Select mas esqueci do Group e Order, agora funcionou certinho.

Mais uma vez obrigado Roberto.

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.