1
resposta

[Projeto] [Desafio] Categorias mais requisitadas

Olá, segue minha resolução do desafio proposto pelo professor:

/*CATEGORIA MAIS REQUISITADA*/
  SELECT categoria.nome AS "Categoria",
         COUNT(aluno_curso.aluno_id) numero_alunos
    FROM curso
    RIGHT JOIN aluno_curso ON aluno_curso.curso_id = curso.id
    RIGHT JOIN categoria   ON curso.categoria_id = categoria.id
GROUP BY 1
ORDER BY numero_alunos DESC;
1 resposta

Oi, Yuri! Tudo bom?

Parabéns pela resolução do desafio proposto! A sua consulta está no caminho certo.

Para deixar a sua resposta ainda mais completa, podemos adicionar a cláusula LIMIT para limitar a quantidade de linhas apresentadas. Com isso, teremos acesso à categoria mais requisitada. O código abaixo apresenta esse cenário:

SELECT categoria.nome,
        COUNT(aluno_curso.curso_id) numero_alunos
FROM categoria
JOIN curso ON curso.categoria_id = categoria.id
JOIN aluno_curso ON aluno_curso.curso_id = curso.id
GROUP BY 1
ORDER BY numero_alunos DESC
LIMIT 1;

Yuri, continue sempre praticando! Se alguma dúvida aparecer ao longo dos seus estudos, estamos por aqui para te ajudar.

Abração.