Boa tarde!
SELECT
TIPO,
TO_CHAR(SUM(VALOR), 'L999G999G990D00', 'NLS_NUMERIC_CHARACTERS = '',.''') AS TOTAL_POR_TIPO
FROM
EMPRESTIMO
GROUP BY
TIPO
HAVING
SUM(VALOR) > 20000;
Saída:
Resolu
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa tarde!
SELECT
TIPO,
TO_CHAR(SUM(VALOR), 'L999G999G990D00', 'NLS_NUMERIC_CHARACTERS = '',.''') AS TOTAL_POR_TIPO
FROM
EMPRESTIMO
GROUP BY
TIPO
HAVING
SUM(VALOR) > 20000;
Saída:
Resolu
Olá, Estudante. Como vai?
Excelente resolução do exercício! A sua consulta SQL está perfeita e demonstra que você compreendeu muito bem a diferença crucial entre filtrar dados antes da agregação (com o WHERE) e filtrar após o agrupamento (com o HAVING).
O uso da cláusula HAVING SUM(VALOR) > 20000 foi cirúrgico aqui, pois permitiu isolar apenas as categorias de empréstimo com volumes verdadeiramente expressivos (acima de 20 mil), descartando pequenos volumes que não trariam o mesmo peso para a análise estratégica de negócios.
Mais uma vez, parabéns pelo capricho na formatação utilizando a função TO_CHAR e as configurações regionais com NLS_NUMERIC_CHARACTERS. Como podemos ver na imagem da saída, o resultado fica extremamente profissional e legível no padrão de moeda corrente.
Como estamos buscando identificar as categorias com maior volume concedido, uma excelente prática de análise de dados é ordenar o resultado final de forma decrescente. Dessa forma, a modalidade de maior impacto financeiro sempre saltará aos olhos logo na primeira linha do relatório.
Veja como incluir essa camada final no seu código:
SELECT
TIPO,
TO_CHAR(SUM(VALOR), 'L999G999G990D00', 'NLS_NUMERIC_CHARACTERS = '',.''') AS TOTAL_POR_TIPO
FROM
EMPRESTIMO
GROUP BY
TIPO
HAVING
SUM(VALOR) > 20000
ORDER BY
SUM(VALOR) DESC;
ORDER BY SUM(VALOR) DESC: Garante que o banco organize o retorno das informações partindo do maior montante acumulado para o menor. Lembre-se de usar a função agregada SUM(VALOR) pura em vez do apelido TOTAL_POR_TIPO para manter a compatibilidade com a maioria das versões e dialetos do ecossistema SQL.Continue aplicando essa consistência e qualidade técnica nas suas resoluções. Seu domínio sobre funções de agrupamento e filtros avançados está excelente!
Espero que possa ter lhe ajudado!