Pessoal, algo me deixou confuso... rs
No exercício 7 da aula 2, o enunciado pede "Podemos agrupar por mais de um campo de uma só vez. Por exemplo, se quisermos a média de notas por aluno por curso, podemos fazer GROUP BY aluno.id, curso.id".
Montei o exercício assim:
SELECT a.nome AS ALUNO, c.nome AS CURSO, ROUND(AVG(n.nota), 2) AS MEDIA_NOTA
FROM aluno a
JOIN matricula m ON a.id = m.aluno_id
JOIN curso c ON m.curso_id = c.id
JOIN secao s ON c.id = s.curso_id
JOIN exercicio e ON s.id = e.secao_id
JOIN resposta r ON e.id = r.exercicio_id
JOIN nota n ON r.id = n.resposta_id
GROUP BY c.nome, a.nome;
Porém o resultado do instrutor foi assim:
select a.nome, 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
group by c.nome, a.nome
Agora vem a minha dúvida... o resultado apresentado foi diferente e eu não consegui enxergar o motivo... Alguém poderia me ajudar a entender? rs