Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como obter NOME DO LIVRO MAIS VENDIDO | QTD VENDIDA

Oi pessoal,

Estava tentando praticar obtendo uma tabela que dispusesse somento o nome do livro mais vendido e a quantidade vendida, porém só consegui obter o seguinte formato com o código a seguir:

SELECT LIVROS.NOME_LIVRO, MAX(VENDAS.QTD_VENDIDA)
FROM LIVROS, VENDAS
WHERE LIVROS.ID_LIVRO = VENDAS.ID_LIVRO
GROUP BY LIVROS.NOME_LIVRO;

Imagem contendo o código que será disposto a seguir e o seu resultado obtido, que é uma tabela com o nome de todos os livros vendidos e o seu total vendas e não somente o único livro mais vendido, como esperado

2 respostas

Olá Giulia, tudo bem?

Que tal neste caso um subselect da tabela Vendas obtendo seu IdLivro de sua máxima qtade vendida relacionando com o IdLivro da tabela Livros?

solução!

Na primeira linha do seu código vc está usando o MAX, que vai retornar apenas a venda com maior quantidade de livro. Para o que vc quer vc precisa usar o SUM. Bom vc poderia colocar um ORDER BY SUM(VENDAS.QTD_VENDIDA) DESC LIMIT 1 no final do código. Ai vai estar ordenando pela soma total dos livros vendidos por cada vendedor, ordenando de forma decrescente e exibindo apenas o primeiro resultado, que seria o maior.