Olá, Flavia, tudo bem?
A sua query ficou muito legal, porém, o que foi solicitado é a quantidade de categorias mais requisitadas por aluno, como foi feito pelo instrutor com os cursos:
SELECT curso.nome,
COUNT(aluno_curso.aluno_id) numero_alunos
FROM curso
JOIN aluno_curso ON aluno_curso.curso_id = curso.id
GROUP BY curso.nome
ORDER BY numero_alunos DESC
LIMIT 1;
Então, a query seria bem semelhante a esta, seria implementado apenas uma nova junção com a tabela de categoria
, para buscar os nomes das categorias
e na cláusula GROUP BY, seria informado o campo categoria.nome
ao invés de curso.nome
, dessa forma:
SELECT categoria.nome,
COUNT(aluno_curso.aluno_id) as numero_alunos
FROM categoria
JOIN curso on curso.categoria_id = categoria.id
JOIN aluno_curso on aluno_curso.curso_id = curso.id
GROUP BY categoria.nome
ORDER BY numero_alunos desc;
Foi muito legal você ter compartilhado a sua resposta da atividade aqui com a gente, você está indo muito bem.
Continue assim, qualquer dúvida é só falar e bons estudos!