Considere o seguinte modelo de dados relacional, onde as chaves primárias estão sublinhadas.
ALUNO (Nome, Numero_aluno, Tipo_aluno, Curso)
HISTORICO_ESCOLAR(Numero_aluno, Identificacao_turma Nota)
DISCIPLINA(Nome_disciplina, Numero_disciplina, Creditos, Departamento)
PRE-REQUISITO (Numero_disciplina, Numero_pre_requisito)
TURMA (Identificacao_turma, Numero_disciplina, Semestre, Ano, Professor)
Observe as seguintes consultas SQL:
I- SELECT Nome, Curso
FROM ALUNO
WHERE NOT EXISTS (SELECT *
FROM HISTORICO_ESCOLAR
WHERE Numero_aluno=ALUNO.Numero_aluno AND NOT (Nota=’A’));
II- SELECT Nome, Curso
FROM ALUNO
WHERE NOT EXISTS (SELECT *
FROM HISTORICO_ESCOLAR
WHERE Numero_aluno=ALUNO.Numero_aluno AND (Nota=’A’));
III- SELECT Nome, Curso
FROM ALUNO
WHERE EXISTS (SELECT *
FROM HISTORICO_ESCOLAR
WHERE Numero_aluno=ALUNO.Numero_aluno AND NOT (Nota=’A’));
IV- SELECT Nome, Curso
FROM ALUNO
WHERE EXISTS (SELECT *
FROM HISTORICO_ESCOLAR
WHERE Numero_aluno=ALUNO.Numero_aluno AND (Nota=’A’));
Observe as seguintes descrições para consultas:
A - Recupera os nomes e curso de todos os alunos com notas A (alunos que têm A em todas as disciplinas).
B - Recupera os nomes e curso de todos os alunos que não têm nota A em qualquer uma das disciplinas.
Dentre as opções abaixo, qual delas correlaciona as consultas SQL com sua descrição correta?