-- a) Todos os cursos da universidade
SELECT nome_curso
FROM cursos;
-- b) Quais os nomes e telefones de alunos da cidade de São Carlos - SP em ordem
DESC de nome
SELECT nome_aluno, telefone
FROM alunos
WHERE cidade = 'São Carlos' AND estado = 'SP'
ORDER BY nome_aluno DESC;
-- c) Quais os nomes de professores que foram contratados antes que 01/jan/1993
SELECT nome_professor
FROM professores
WHERE data_contratacao < '1993-01-01';
-- d) Quais os nomes de alunos que iniciam com a letra 'J'
SELECT nome_aluno
FROM alunos
WHERE nome_aluno LIKE 'J%';
-- e) Quais os nomes das disciplinas do curso de Ciência da Computação
SELECT d.nome_disciplina
FROM disciplinas d
JOIN curriculo c ON d.id_disciplina = c.id_disciplina
JOIN cursos cu ON c.id_curso = cu.id_curso
WHERE cu.nome_curso = 'Ciência da Computação';
-- f) Quais os nomes dos cursos que possuem no curriculum a disciplina Cálculo
Numérico
SELECT DISTINCT cu.nome_curso
FROM cursos cu
JOIN curriculo c ON cu.id_curso = c.id_curso
JOIN disciplinas d ON c.id_disciplina = d.id_disciplina
WHERE d.nome_disciplina = 'Cálculo Numérico';
-- g) Quais os nomes das disciplinas que o aluno Marcos João Casanova cursou no 1º
semestre de 1998
SELECT d.nome_disciplina
FROM disciplinas d
JOIN matriculas m ON d.id_disciplina = m.id_disciplina
JOIN alunos a ON m.id_aluno = a.id_aluno
WHERE a.nome_aluno = 'Marcos João Casanova'
AND m.semestre = '1998-1';
-- h) Quais os nomes de disciplinas que o aluno Ailton Castro foi reprovado
SELECT d.nome_disciplina
FROM disciplinas d
JOIN matriculas m ON d.id_disciplina = m.id_disciplina
JOIN alunos a ON m.id_aluno = a.id_aluno
WHERE a.nome_aluno = 'Ailton Castro'
AND m.status = 'Reprovado';
-- i) Quais os nomes de alunos reprovados na disciplina de Cálculo Numérico no 1º
semestre de 1998
SELECT a.nome_aluno
FROM alunos a
JOIN matriculas m ON a.id_aluno = m.id_aluno
JOIN disciplinas d ON m.id_disciplina = d.id_disciplina
WHERE d.nome_disciplina = 'Cálculo Numérico'
AND m.semestre = '1998-1'
AND m.status = 'Reprovado';
-- j) Quais os nomes das disciplinas ministradas pelo prof. Ramon Travanti
SELECT d.nome_disciplina
FROM disciplinas d
JOIN ministracoes mi ON d.id_disciplina = mi.id_disciplina
JOIN professores p ON mi.id_professor = p.id_professor
WHERE p.nome_professor = 'Ramon Travanti';
-- k) Quais os nomes de professores que já ministraram aula de Banco de Dados
SELECT DISTINCT p.nome_professor
FROM professores p
JOIN ministracoes mi ON p.id_professor = mi.id_professor
JOIN disciplinas d ON mi.id_disciplina = d.id_disciplina
WHERE d.nome_disciplina = 'Banco de Dados';
-- l) Qual a maior e a menor nota da disciplina de Cálculo Numérico no 1º semestre
de 1998
SELECT MAX(m.nota) AS maior_nota, MIN(m.nota) AS menor_nota
FROM matriculas m
JOIN disciplinas d ON m.id_disciplina = d.id_disciplina
WHERE d.nome_disciplina = 'Cálculo Numérico'
AND m.semestre = '1998-1';