Geral Múltipla Escolha

Sejam duas tabelas assim estruturadas: EMPREGADO(CODIGOE, NOME, ENDERECO) DEPENDENTE(CODIGOE, NOME) CODIGOE REFERENCIA EMPREGADO Seja a consulta a seguir: SELECT E.NOME, D.NOME FROM EMPREGADO E JOIN DEPENDENTE D ON (E.CODIGOE=D.CODIGOE) ORDER BY E.NOME; A consulta retorna:

Sejam duas tabelas assim estruturadas:
EMPREGADO(CODIGOE, NOME, ENDERECO)
DEPENDENTE(CODIGOE, NOME)
CODIGOE REFERENCIA EMPREGADO

Seja a consulta a seguir:
SELECT E.NOME, D.NOME
FROM EMPREGADO E JOIN DEPENDENTE D ON (E.CODIGOE=D.CODIGOE)
ORDER BY E.NOME;

A consulta retorna:

  1. O nome do empregado e o nome de cada dependente dele. Os empregados sem dependentes aparecem no resultado.
  2. O nome do empregado e o nome de cada dependente dele. Os empregados sem dependentes não aparecem no resultado.
  3. Somente o nome dos dependentes para os quais não há empregados.
  4. Somente o nome dos empregados para os quais não há dependentes.

Resolução completa

Explicação passo a passo

B
Alternativa B

Alternativa B

Análise da Consulta SQL

Para responder corretamente, é necessário entender o comportamento da cláusula JOIN no padrão SQL. A consulta apresentada é:

SELECT E.NOME, D.NOME
FROM EMPREGADO E JOIN DEPENDENTE D ON (E.CODIGO E = D.CODIGO E)
ORDER BY E.NOME;

O ponto central desta questão reside na palavra-chave JOIN. No padrão SQL, quando se utiliza apenas a palavra JOIN sem especificar o tipo, ela funciona como um INNER JOIN (junção interna).

Comportamento do INNER JOIN

Um INNER JOIN retorna apenas as linhas onde existe uma correspondência válida nas duas tabelas envolvidas, baseada na condição especificada no ON.

  • Condição de Junção: E.CODIGO E = D.CODIGO E
  • Regra de Exclusão: Se um funcionário (EMPREGADO) não tiver nenhum registro correspondente na tabela DEPENDENTE (ou seja, não possuir dependentes cadastrados com aquele código), ele não aparecerá no resultado.

Comparação das Alternativas

AlternativaDescriçãoCorreta?Motivo
AFuncionários sem dependentes aparecem❌ ErradoIsso exigiria um LEFT JOIN.
BFuncionários sem dependentes não aparecemCorretoComporta-se como INNER JOIN.
CApenas nomes de dependentes❌ ErradoA consulta seleciona E.NOME também.
DApenas nomes de funcionários❌ ErradoA consulta seleciona D.NOME também.

Conclusão

A alternativa B descreve exatamente o que um INNER JOIN faz: exibe o nome do empregado e o nome de cada dependente dele, filtrando para mostrar apenas aqueles empregados que possuem registros válos na tabela de dependentes.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Geral

Ver mais Geral resolvidas

Tem outra questão de Geral?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.