1
resposta

[Projeto] Mão na massa: gerenciamento escolar com banco de dados relacional

-- Consulta 1: Retornar a média de Notas dos Alunos em história.
SELECT AVG(Nota)
FROM Notas
WHERE id_disciplina = (
    SELECT id_disciplina
    FROM Disciplinas
    WHERE nome_disciplina = 'História');
    
-- Consulta 2: Retornar as informações dos alunos cujo Nome começa com 'A'.
SELECT * 
from Alunos
WHERE nome_aluno LIKE('A%');

-- Consulta 3: Buscar apenas os alunos que fazem aniversário em fevereiro.
SELECT *
FROM Alunos
WHERE data_nascimento LIKE('%%-02-%%%%')

-- Consulta 4: Realizar uma consulta que calcula a idade dos Alunos.
SELECT nome_aluno, data_nascimento, (strftime('%Y', CURRENT_DATE) - strftime('%Y', data_nascimento)) - 
      (strftime('%m-%d', CURRENT_DATE) < strftime('%m-%d', data_nascimento)) AS idade
FROM Alunos;

-- Consulta 5: Retornar se o aluno está ou não aprovado. Aluno é considerado aprovado se a sua nota foi igual ou maior que 6.
SELECT id_aluno AS ALUNO, nota,
CASE
    WHEN nota >= 6 THEN 'APROVADO'
    ELSE 'REPROVADO'
    END AS RESULTADO
FROM Notas;
1 resposta

Oi, João Victor! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Uma dica interessante para o futuro é utilizar IN para verificar múltiplos valores. Por exemplo:


SELECT AVG(Nota)
FROM Notas
WHERE id_disciplina IN (
    SELECT id_disciplina
    FROM Disciplinas
    WHERE nome_disciplina = 'Historia'
);

Neste código, o IN permite selecionar registros que correspondem a qualquer id retornado pela subconsulta, facilitando a leitura e manutenção.

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!