Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resolução do desafio: Mão na massa: gerenciamento escolar com banco de dados relacional

Segue abaixo a resolução que estipulei para o desafio, fiquei em dúvida apenas no 2º desafio se da maneira que montei deixa margem para algum erro futuro no código ou se não há problema em manter desta forma.

1º Desafio

SELECT pr.nome_professor, tr.nome_turma from Turmas tr
join Professores pr
on pr.id_professor = tr.ID_Professor_Orientador;

2º Desafio

SELECT al.nome_aluno, nt.nota from Notas nt
join Alunos al
on nt.ID_Aluno = al.ID_Aluno
join Disciplinas dp
on nt.ID_Disciplina = dp.ID_Disciplina
where nt.ID_Disciplina = (SELECT dp.ID_Disciplina from Disciplinas dp where nome_disciplina like 'Matemática')
group by nt.Nota
order by nt.Nota desc
limit 1;

3º Desafio

SELECT ID_Turma, COUNT(ID_Aluno) AS total_alunos
FROM Turma_Alunos
GROUP BY ID_Turma;

4º Desafio

SELECT al.nome_aluno, dp.nome_disciplina from Alunos al
join Turma_Alunos ta
on al.ID_Aluno = ta.ID_Aluno
join Turma_Disciplinas td
on ta.ID_Turma = td.ID_Turma
join Disciplinas dp
on td.ID_Disciplina = dp.ID_Disciplina;

5º Desafio

CREATE view View_Nome_Disciplina_Notas as
SELECT al.nome_aluno, dp.nome_disciplina, nt.Nota FROM Alunos al
JOIN Turma_Alunos ta 
ON al.ID_Aluno = ta.ID_Aluno
JOIN Turma_Disciplinas td
ON ta.ID_Turma = td.ID_Turma
JOIN Disciplinas dp
ON td.ID_Disciplina = dp.ID_Disciplina
JOIN Notas nt
ON al.ID_Aluno = nt.ID_Aluno AND dp.ID_Disciplina = nt.ID_Disciplina;


SELECT * from View_Nome_Disciplina_Notas
1 resposta
solução!

Olá, Felipe! Tudo bem?

Parabéns por concluir o desafio! E obrigada por compartilhar com a comunidade, tenho certeza de que muitas pessoas poderão se inspirar na forma como você respondeu o desafio! Continue com esse empenho e dedicação!

Abraço! :)

Fico à disposição!