E ai galerinha, tudo bem com vocês?
Hoje teremos mais um DESAFIO DO GORDO!
Observem a tabela Pedido ilustrada na figura abaixo:
A tabela Pedido contém um registro para cada pedido realizado por um cliente e qual o valor total gasto neste mesmo pedido.
O desafio é escrever uma consulta que gere o ranking de clientes, ou seja, aquele cliente que mais gastou na soma de todos os seus pedidos deve ser o primeiro do ranking.
Para ajudá-los coloquei o resultado final ilustrado na figura abaixo.
Quero que postem a resposta nos comentários pessoal.
Grande abraço e até a próxima.
Fala Vitor beleza, acho que esse comando deve resolver tudo,
SELECT P.CODCLI,SUM(P.VALORTOTAL),
DENSE_RANK() OVER (ORDER BY SUM(P.VALORTOTAL) DESC) AS POSRANK
FROM TB_PEDIDO P
INNER JOIN TB_PEDIDO TP
ON P.CODCLI = TP.CODCLI
GROUP BY P.CODCLI
ORDER BY RANKING
E ai Cleiton, tudo bem contigo?
Show de bola sua resposta hein?
Valeu pela participação e acompanha na semana que vem a solução completa e detalhada do DESAFIO DO GORDO.
Grande abraço.
Salve “tio”, li o desafio e fui fazer, bom o desafio foi cumprido, mas ficaram algumas dúvidas, o “tio” pode esclarecer elas?!
Nunca postei nada, mas segue a resposta.
“SELECT CodCli, SUM(ValorTotal) AS ValorTotal, ROW_NUMBER() OVER(ORDER BY SUM(ValorTotal) DESC) AS PosRank FROM Desafio GROUP BY CodCli”.
(Devo postar a resposta das próximas vezes?!).
A dúvida que ficou foi pra fazer o ranking, descobri quatro comandos “possíveis” que são:
– RANK
– DENSE_RANK
– NTILE
– ROW_NUMBER
Acabei escolhendo o row_number, pois foi que eu encontrei primeiro, mas pode nos explicar mais sobre cada um deles?
Abraço a todos
Fala grande Adler, tudo bem contigo meu velho?
Lógico que deve postar sempre as respostas para o DESAFIO DO GORDO.
A idéia é que vocês participem sempre.
Com relação aos quatro possíveis comandos de Ranking, hehehehehe, é só acompanhar na semana que vem que quando postarei a resposta para o desafio que explicarei detalhadamente cada um deles.
Grande abraço.
Fala amigão,
Meu nome é Marcelo e preciso de uma ajuda, estou com três exercicios para fazer de pl/sql. Gostaria da sua ajuda, o enunciado são os seguintes:
Faça um função denominada risco_cliente que possa ser chamada de um comando de
select que tenha como parâmetro de entrada o id de um cliente e que devolva a
classificação de risco do cliente.
A classificação de risco deverá ser estabelecida da seguinte forma:
Se a situação de credito do cliente for ótima e ele tiver pelo menos duas compras –
risco muito baixo.
Se a situação de credito do cliente for boa e ele tiver pelo menos duas compras –
risco baixo.
Se a situação de credito do cliente for ruim e ele tiver pelo menos duas compras –
risco médio.
Se a situação de credito do cliente for ótima e ele tiver uma compra – risco baixo.
Se a situação de credito do cliente for boa e ele tiver uma compra -risco médio.
Se a situação de credito do cliente for ruim e ele tiver uma compra – risco alto.
Se a situação de credito do cliente for ótima e ele não tiver nenhuma compra –
risco médio.
Se a situação de credito do cliente for boa e ele não tiver nenhuma compra – risco
alto.
Se a situação de credito do cliente for ruim e ele não tiver nenhuma compra – risco
muito alto.
Obs : o que caracteriza o cliente ter uma compra é existir fatura com o seu id.
Fala grande Marcelo, beleza?
Velho, não sou especialista em PL/SQL para poder lhe ajudar nessa tarefa.
Tenta postar sua duvida no grupo http://www.sqlmanics.com.br.
Grande abraço.
E ai Tio, cade a resposta do desafio e das perguntas do Adler sobre os comandos de ranking? rsrs
Valeu!