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

[Minha Solução] - Desafio Classificar Clientes

Para cada cliente, temos seus limites de crédito mensais. Liste somente os nomes dos clientes e os classifique por:

Acima ou igual a 150.000 de limite de crédito - Clientes grandes Entre 150.000 e 110.000 de limite de crédito - Clientes médios Menores que 110.000 de limite de crédito - Clientes pequenos


--Utilizando BETWEEN:

SELECT nome "Nome Cliente", limite_de_credito "Limite de Crédito",
    (CASE WHEN limite_de_credito >= 150000 THEN 'CLIENTES GRANDES'
      WHEN limite_de_credito BETWEEN 110000 AND 150000 THEN 'CLIENTES MEDIOS'
      ELSE 'CLIENTES PEQUENOS'
      END) AS "Grupo de Clientes"
FROM TABELA_DE_CLIENTES
ORDER BY "Grupo de Clientes";

--Utilizando comparadores:

SELECT nome "Nome Cliente", limite_de_credito "Limite de Crédito",
    (CASE WHEN limite_de_credito >= 150000 THEN 'CLIENTES GRANDES'
      WHEN limite_de_credito < 110000 THEN 'CLIENTES PEQUENOS'
      ELSE 'CLIENTES MÉDIOS'
      END) AS "Grupo de Clientes"
FROM TABELA_DE_CLIENTES
ORDER BY "Grupo de Clientes";

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Oi Carlos,

Parabéns pela iniciativa em compartilhar suas soluções! 👍

As duas abordagens que você apresentou estão corretas e resolvem o desafio proposto.

A primeira, utilizando BETWEEN, é mais concisa para definir intervalos, enquanto a segunda, com comparadores, é mais explícita.

Ambas são válidas e a escolha entre elas depende da sua preferência e do contexto. 💪

A sua solução com CASE WHEN é uma excelente forma de classificar os clientes com base em seus limites de crédito. 👏

A utilização do ORDER BY para ordenar os resultados pelo grupo de clientes também é uma boa prática.

Para saber mais: Documentação oficial do Oracle sobre a cláusula CASE. Este link aborda a sintaxe e o uso da cláusula CASE em consultas SQL.

Continue praticando e explorando as diferentes formas de resolver os desafios! 🤔