Olá pessoal,
Gostaria uma ajuda de vocês.
A resolução correta desse exercício:
select c.nome, avg(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
join aluno a on a.id = r.aluno_id
where a.nome like '%Santos%' or a.nome like '%Silva%'
group by c.nome
Resultado do select:
Nome Média
Scrum e métodos ágeis | 5.7778
SQL e banco de dados | 6.2857
Minha resposta(antes de ver a resolução) :
select c.nome, avg(n.nota) from nota n
join resposta r on n.resposta_id = r.id
join exercicio e on r.exercicio_id = e.id
join secao s on e.secao_id = s.id
join curso c on s.curso_id = c.id
join matricula m on m.curso_id = c.id
join aluno a on m.aluno_id = a.id
where a.nome like '%Silva%' or a.nome like '%Santos%'
group by c.nome;
Resultado do select:
Nome Média
Scrum e métodos ágeis | 5.7778
SQL e banco de dados | 6.2727
Como vocês podem ver, o resultado final ficou pouquíssimo diferente, por eu ter relacionado a tabela matriculas também no meu comando sql.
Minha pergunta é: Existe alguma técnica que possa me ajudar no momento de juntar(dar um join) as tabelas ?