Tive dúvida em como fazer as consultas do exercício 4 e 5 no gerenciamento escolar.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Tive dúvida em como fazer as consultas do exercício 4 e 5 no gerenciamento escolar.
Oii, Caio! Tudo bem?
Agradeço por interagir aqui no fórum trazendo suas dúvidas para podermos te auxiliar. Vamos lá!
Consulta 4: Porcentagem dos alunos que estão aprovados
Nessa atividade, é preciso criar uma consulta que nos retorna os alunos que estão aprovados. Para isso podemos fazer o seguinte:
SELECT
COUNT(DISTINCT CASE WHEN n.Nota >= 7.0 THEN a.ID_Aluno END) * 100.0 / COUNT(DISTINCT a.ID_Aluno) AS Porcentagem_Aprovados
FROM
Alunos a
LEFT JOIN
Notas n ON n.ID_Aluno = a.ID_Aluno;
No exemplo acima, o COUNT(DISTINCT CASE WHEN n.Nota >= 7.0 THEN a.ID_Aluno END) contará o número de alunos distintos que têm pelo menos uma nota maior ou igual a 7.0. Depois, COUNT(DISTINCT a.ID_Aluno) contará o número total de alunos distintos. E multiplicamos o número de alunos aprovados por 100.0 e dividimos pelo número total de alunos, tendo o retorno da porcentagem de alunos aprovados.
Saída:
Consulta 5: Porcentagem dos alunos que estão aprovados por disciplina
Nessa atividade, vamos criar uma consulta para calcular a porcentagem de alunos aprovados por disciplina. Segue um exemplo da consulta:
SELECT
d.Nome_Disciplina AS Disciplina,
ROUND(100.0 * COUNT(DISTINCT CASE WHEN n.Nota >= 7.0 THEN n.ID_Aluno END) / COUNT(DISTINCT n.ID_Aluno), 2) || '%' AS Porcentagem_Aprovados
FROM
Notas n
JOIN
Disciplinas d ON n.ID_Disciplina = d.ID_Disciplina
GROUP BY
d.Nome_Disciplina;
No exemplo acima começamos pela seleção do nome da disciplina com o SELECT, depois, é calculado a porcentagem de alunos aprovados e finalizamos com a concatenação com o símbolo %. Em seguida, realizamos a contagem de número de alunos aprovados e de alunos para cada disciplina. Juntamos as tabelas Notascom a Disciplinas e, por fim, agrupamos os resultados em Nome_Disciplina.
Saída:
Espero ter esclarecido as suas dúvidas. Caso você queira conhecer outras abordagens, fique à vontade para explorar o fórum desta aula e ver o que os outros estudantes estão fazendo.
Qualquer dúvida, conte conosco. Abraço!