1
resposta

Categoria mais requisitada

A resposta seria essa ? estou em dúvida.

select C.nome, count(A.aluno_id) as alunos_inscritos
    from aluno_curso A
    inner join curso B on A.curso_id = B.id
    inner join categoria C on B.id = C.id
group by 1
order by alunos_inscritos desc;
1 resposta

Olá, Felipe, tudo bem?

Analisei a sua resposta, e vi que existe um erro de relacionamento no INNER JOIN entre a categoria e o curso.

Na tabela curso, a Foreign Key da categoria, é a categoria_id, logo o seu código deveria ficar assim:

select C.nome, count(A.aluno_id) as alunos_inscritos
    from aluno_curso A
    inner join curso B on A.curso_id = B.id
    inner join categoria C on B.categoria_id = C.id
group by 1
order by alunos_inscritos desc;