Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Aula 03 - Exercício 08 (Agrupando dados)

A consulta que faço não retornar todos os curso: https://cursos.alura.com.br/course/banco-de-dados-e-sql-complexas/task/4244

select a.id,a.nome,c.id,c.nome,avg(n.nota) from nota n
join aluno a on a.id = n.id
join resposta r on n.resposta_id = r.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
group by a.id, c.id

O resultado que vem é o seguinte:

+----+----------------+----+----------------------+-------------+
| id | nome           | id | nome                 | avg(n.nota) |
+----+----------------+----+----------------------+-------------+
|  1 | João da Silva  |  1 | SQL e banco de dados |      8.0000 |
|  2 | Frederico José |  1 | SQL e banco de dados |      0.0000 |
|  3 | Alberto Santos |  1 | SQL e banco de dados |      7.0000 |
|  4 | Renata Alonso  |  1 | SQL e banco de dados |      6.0000 |
|  5 | Paulo da Silva |  1 | SQL e banco de dados |      9.0000 |
+----+----------------+----+----------------------+-------------+

Não aparece todos os cursos! O que falta para que os demais cursos apareçam?

2 respostas
solução!

Acho que o erro está no JOIN de nota com aluno pelo id da nota:

join aluno a on a.id = n.id

Creio que o JOIN tem que ser pelo aluno_id da resposta.

join aluno a on a.id = r.aluno_id

Ok..valeu.