Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Duvida para totalizar o ranque de produto e clientes

Olá, boa tarde!

Gostaria de ajuda para responder as 2 questões abaixo:

-- CLIENTE QUE MAIS COMPROU SEM FILTRO DE DATA

SELECT TC.NOME, (SUM(INF.QUANTIDADE * INF.PRECO)) AS TOTAL_COMPRA

FROM TABELA_DE_CLIENTES TC
INNER JOIN NOTAS_FISCAIS NF ON TC.CPF = NF.CPF
INNER JOIN ITENS_NOTAS_FISCAIS INF ON INF.NUMERO = NF.NUMERO
GROUP BY TC.NOME;
-- PRODUTO QUE MAIS VENDEU SEM FILTRO DE DATA

SELECT TB.NOME_DO_PRODUTO , INF.CODIGO_DO_PRODUTO, (SUM(INF.QUANTIDADE * INF.PRECO)) AS TOTAL
FROM TABELA_DE_PRODUTOS TB
INNER JOIN ITENS_NOTAS_FISCAIS INF ON INF.CODIGO_DO_PRODUTO = TB.CODIGO_DO_PRODUTO
GROUP BY TB.NOME_DO_PRODUTO, INF.CODIGO_DO_PRODUTO;
1 resposta
solução!

Oi, Jessica! Como você está?

No primeiro caso, para encontrar o cliente que mais comprou, nós podemos organizar o resultado em ordem decrescente, usando ORDER BY, e selecionar o primeiro registro, a partir da cláusula TOP 1. Abaixo trago um exemplo de consulta:

SELECT TOP 1 TC.NOME, (SUM(INF.QUANTIDADE * INF.PRECO)) AS TOTAL_COMPRA
FROM TABELA_DE_CLIENTES TC
INNER JOIN NOTAS_FISCAIS NF ON TC.CPF = NF.CPF
INNER JOIN ITENS_NOTAS_FISCAIS INF ON INF.NUMERO = NF.NUMERO
GROUP BY TC.NOME
ORDER BY TOTAL_COMPRA DESC;

No segundo caso, para encontrar o produto que mais vendeu, podemos fazer algo semelhante à situação anterior, ordenando o resultado em ordem decrescente e selecionando o primeiro registro:

SELECT TOP 1 TB.NOME_DO_PRODUTO , INF.CODIGO_DO_PRODUTO, (SUM(INF.QUANTIDADE * INF.PRECO)) AS TOTAL
FROM TABELA_DE_PRODUTOS TB
INNER JOIN ITENS_NOTAS_FISCAIS INF ON INF.CODIGO_DO_PRODUTO = TB.CODIGO_DO_PRODUTO
GROUP BY TB.NOME_DO_PRODUTO, INF.CODIGO_DO_PRODUTO
ORDER BY TOTAL DESC;

Como estamos buscando apenas o cliente que mais comprou e o produto que mais foi vendido, devemos adicionar o número 1 ao TOP — limitando, assim, a apresentação das informações.

Espero ter ajudado com suas questões, Jessica. Caso surjam novas dúvidas, fico à disposição para ajudá-la.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!