Como eu poderia fazer um select específico mostrando apenas um resultado da pessoa que comprou mais no ano?
Como eu poderia fazer um select específico mostrando apenas um resultado da pessoa que comprou mais no ano?
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
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!!