Tive dúvida em como fazer as consultas do exercício 4 e 5 no gerenciamento escolar.
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 Notas
com 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!