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

[Dúvida] Quem que comprou mais durante a data de 2016?

Como eu poderia fazer um select específico mostrando apenas um resultado da pessoa que comprou mais no ano?

5 respostas

Opa, fala Jean!

Não manjo muito de SQL, mas você poderia tentar agrupar pela coluna de compras e organizar por ASC. Depois, você seleciona o maior valor.

Acho que usaria um GROUP BY com ASC + Filter.

Veja na internet alguns artigos https://docs.data.world/documentation/sql/concepts/intermediate/GROUP_BY.html

solução!

Opa por consequência da aula seguinte mostrando as subquerys eu consegui fazer. A questão que foi mostrada: Quais foram os clientes que fizeram mais de 2000 compras em 2016? Resposta:

SELECT CPF, COUNT(*) FROM notas_fiscais
  WHERE YEAR(DATA_VENDA) = 2016
  GROUP BY CPF
  HAVING COUNT(*) > 2000;

Meu desafio: "QUAL O QUE MAIS COMPROU EM 2016?" Resposta:

SELECT CPF,MAX(X.MAXIMO) FROM
  (SELECT CPF, COUNT(*) AS MAXIMO FROM notas_fiscais
  WHERE YEAR(DATA_VENDA) = 2016
  GROUP BY CPF
  HAVING COUNT(*) > 2000)
X;

Por ASC também dava mesmo em Bruno, muito obrigado!

Também sendo possível utilizar a view:

CREATE VIEW VW_TOTAL_VENDA_2016 AS 
SELECT CPF, COUNT(*) AS TOTAL_VENDA FROM notas_fiscais
WHERE YEAR(DATA_VENDA) = 2016
GROUP BY CPF
HAVING COUNT(*) > 2000;

e depois obter o resultado pela view

SELECT CPF,MAX(TOTAL_VENDA) FROM VW_TOTAL_VENDA_2016;

Ah, olha só que bacana, essa função do máximo eu não conhecia, por isso é bom contribuir com a comunidade.

Como eu não sou muito bom com SQL (sei somente o Select From kkkkk), eu iria dividir os processos em etapas.

Mas, que bom que você conseguiu, parabéns! Segue firme!!