Questão FC295888
Qual consulta SQL foi executada?
Linguagem SQL
CESGRANRIO · 2023
Na Figura abaixo, é exibido o estado atual de uma tabela que registra as disciplinas de um curso e seus pré-requisitos.
| --- TABELA CURSO---- | |
| DISCIPLINA | PRE_REQUISITO |
| PROJETOS DE SISTEMAS | BANCO DE DADOS I |
| PROJETO FINAL | PROJETO DE SISTEMAS |
| BANCO DE DADOS I | MODELAGEM DE DADOS |
| PROGRAMAÇÃO | ESTRUTURAS DE DADOS |
Uma consulta SQL nessa tabela foi executada e produziu como resposta uma relação com duas linhas, cujos valores são exibidos abaixo.
PROJETO DE SISTEMAS
BANCO DE DADOS I
Qual consulta SQL foi executada?
- SELECT DISCIPLINA FROM CURSO UNION SELECT PRE_REQUISITO FROM CURSO;
- SELECT DISCIPLINA, PRE_REQUISITO FROM CURSO WHERE DISCIPLINA = 'PROJETO DE SISTEMAS' AND PRE_REQUISITO = 'BANCO DE DADOS I' OR DISCIPLINA = 'BANCO DE DADOS I' AND PRE_REQUISITO = 'PROJETO DE SISTEMAS';
- SELECT DISCIPLINA FROM CURSO INTERSECT SELECT PRE_REQUISITO FROM CURSO;
- SELECT C1.DISCIPLINA, C2.PRE_REQUISITO FROM CURSO C1 RIGHT JOIN CURSO C2 ON C1.DISCIPLINA = C2.PRE_REQUISITO;
- SELECT C1.DISCIPLINA, C2.PRE_REQUISITO FROM CURSO C1 LEFT JOIN CURSO C2 ON C1.DISCIPLINA = C2.PRE_REQUISITO;
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A consulta SELECT DISCIPLINA FROM CURSO INTERSECT SELECT PRE_REQUISITO FROM CURSO; solicita duas projeções da mesma tabela e aplica a operação de interseção entre elas.
A operação INTERSECT retorna apenas os valores que aparecem em ambas as consultas, isto é, a interseção dos conjuntos resultantes (\(A \cap B\)).
No contexto da tabela, a primeira subconsulta lista todas as disciplinas e a segunda lista todos os pré‑requisitos; a interseção devolve exatamente as entradas que são simultaneamente disciplina e pré‑requisito — aqui, PROJETO DE SISTEMAS e BANCO DE DADOS I.
Portanto, a instrução usa INTERSECT para filtrar e mostrar somente os nomes comuns aos dois conjuntos.
Conteúdo do catálogo FC Concursos · Atualizado em