FC ConcursosFC Concursos

Questão FC90550

Em um banco de dados relacional, foram criadas as seguintes relações, posteriormente transformadas e preenchidos seus dados em tabelas. As chaves primárias estão realçadas em itáli

Linguagem SQL

CEBRASPE (CESPE) · 2022

Em um banco de dados relacional, foram criadas as seguintes relações, posteriormente transformadas e preenchidos seus dados em tabelas. As chaves primárias estão realçadas em itálico.

professor (cpf_professor, nome, titulação,
salario)
curso (cod_curso, titulo, objetivo,
cpf_professor_coord)
contrato (cpf_professor, cod_curso, data_inicio)
 
Tendo como referência as informações precedentes, julgue o item subsecutivo.
 
O comando SQL a seguir cria uma visão com todos os dados dos professores e dos respectivos cursos que eles coordenam, não incluindo os cursos sem um professor com a função de coordenador.
 
create view coordenador_curso as
select * from professor p left outer join
curso s on true
where p.cpf_professor = s.cpf_professor_coord;
Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

Comentário: A consulta SQL apresentada está correta, pois:

  1. Uso do LEFT OUTER JOIN:
    • O comando LEFT OUTER JOIN inclui todos os professores, mesmo aqueles que não coordenam cursos.
    • No entanto, a cláusula WHERE p.cpf_professor = s.cpf_professor_coord transforma o LEFT OUTER JOIN em um INNER JOIN, pois está filtrando apenas os registros onde há correspondência entre professor e curso.
  2. Filtro para remover cursos sem coordenador:
    • A cláusula WHERE p.cpf_professor = s.cpf_professor_coord remove os cursos sem professor coordenador, pois elimina os registros onde cpf_professor_coord é NULL.
  • A visão coordenador_curso lista apenas professores que são coordenadores de cursos, sem incluir cursos sem coordenador.
  • A estrutura da consulta está bem definida, garantindo a consistência com o enunciado.
  • Conteúdo do catálogo FC Concursos · Atualizado em

    Continue aprendendo