Lucas,
Para saber o que esta acontecendo você pode seguir da seguinte forma.
Remover o "group by" e executar o código, assim é possível avaliar o resultado.
select c.nome, n.nota
from nota n
join resposta r on r.id = n.resposta_id
join exercicio e on e.id = r.exercicio_id
join secao s on s.id = e.secao_id
join curso c on c.id = s.curso_id
Caso não retorne nada então vamos remover um join.
select n.nota
from nota n
join resposta r on r.id = n.resposta_id
join exercicio e on e.id = r.exercicio_id
join secao s on s.id = e.secao_id
Caso não retorne nada novamente remova novamente outro join, desse forma você consegue isolar em qual tabela não possui o dado e pode fazer o insert.
Eu costumava usar este método para resolver problemas de join com tabelas de referencia em produção.