Avalados por :

Como selecionar os n valores mais altos para cada valor de coluna diferente - Guia passo a passo

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Cargando...

Olá a todos,

Meu requisito é selecionar os n valores mais altos para cada valor de coluna diferente.

Suponhamos que a tabela contenha três campos - Nome do Cliente, Região, Vendas

Preciso dos 5 melhores clientes para cada região diferente com base nas vendas.



Agradeceria qualquer ajuda a respeito.


Saudações,


Nakul Kothari

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Olá Krishna,

Obrigado pela sua resposta. É exatamente o que eu queria.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Nakul,

Entendi seu requisito agora. Podemos usar funções de janela para alcançar o que você mencionou abaixo:

SELECT Region_cd, País, SUM(Unidades) como Unidades

FROM

(

SELECT Region_cd, País, sum(Unidades) como Unidades, rank() OVER (PARTITION BY Region_cd ORDER BY SUM(Unidades) DESC ) como Rango

FROM "TABELA/VISTA"

GROUP BY Região, País

)

WHERE Rango <= 5

GROUP BY Região, País

Isso lhe dará os Top 5 países em cada região diferente.

Avise-me se isso aborda a descrição do seu problema como esperado.

Saudações,

Krishna Tangudu

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Krishna,

Obrigado pela sua resposta.

No entanto, sua solução restringe a saída a apenas 5 linhas. Dando um total de 5 linhas.

Enquanto eu preciso dos 5 principais clientes para cada região diferente.

Vamos supor que a tabela é assim

Eu quero meu resultado - Os 2 principais clientes para cada região diferente com base nas vendas como

REGIÃO-----CLIENTE------VENDAS

C1 -------- -------P2----------- --------200

C1-------- -------P4----------- --------150

C2 -------- -------P2----------- --------300

C2-------- -------P1----------- --------200

Se possível, você também pode fornecer uma solução gráfica

table.jpg
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Nakul,

Está pedindo ajuda para fazer isso em visualizações gráficas ou SQL?

Se for SQL, por favor encontre o seguinte:

SELECT TOP 5 Customer_Name , Region , sum(Sales) FROM TABLE

GROUP BY Customer_Name , Region

ORDER BY sum(Sales) DESC

Avise-me se estiver procurando uma solução baseada em visualização gráfica.

Saudações,

Krishna Tangudu

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?