Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FUNDATEC 2023

Banco de DadosSQL
Código
qq897096
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Ciências de Dados
Sobre junções em SQL, é correto afirmar que:
  1. AA junção natural é uma operação de junção entre colunas da mesma tabela.
  2. BA junção SELF recupera todas as linhas da junção, além das linhas que não possuem correspondentes na tabela à esquerda da operação.
  3. CA junção externa compara todas as colunas que possuem nomes idênticos das tabelas envolvidas na junção.
  4. DNa junção natural, ON compara todas as colunas da tabela envolvida por meio da coluna indicada.
  5. EA junção externa à esquerda recupera todas as linhas da junção, além das que não possuem correspondentes na tabela à esquerda da operação.
Revelar gabarito e comentário

GabaritoE — A junção externa à esquerda recupera todas as linhas da junção, além das que não possuem correspondentes na tabela à esquerda da operação.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Junções em SQL

Gabarito: letra E. A junção externa à esquerda (LEFT OUTER JOIN) retorna todas as linhas da tabela à esquerda, inclusive aquelas que não possuem correspondência na tabela à direita, que são preenchidas com NULL. Essa é a definição correta, conforme o padrão SQL. As demais alternativas misturam indevidamente os conceitos de junção natural, self-join e junção externa.

Junções SQL
  • 1INNER JOIN
    • Só linhas com correspondência
  • 2OUTER JOIN
    • LEFT
      • Todas da esquerda + correspondentes
    • RIGHT
      • Todas da direita + correspondentes
    • FULL
      • Todas de ambas
  • 3NATURAL JOIN
    • Compara colunas homônimas
    • Sem cláusula ON
  • 4SELF JOIN
    • Tabela consigo mesma
    • Pode ser INNER ou OUTER
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

A junção natural (NATURAL JOIN) é uma operação entre duas tabelas distintas que compara automaticamente todas as colunas de mesmo nome. Não se trata de uma junção entre colunas da mesma tabela; isso seria um self-join (auto junção).

Alternativa B — ❌ Incorreta

A descrição “recupera todas as linhas da junção, além das linhas que não possuem correspondentes na tabela à esquerda” é característica da junção externa à esquerda (LEFT OUTER JOIN), e não do self-join. O self-join é uma junção de uma tabela consigo mesma, podendo ser interna ou externa, mas não tem essa definição específica.

Alternativa C — ❌ Incorreta

Comparar todas as colunas de nomes idênticos é a definição de junção natural (NATURAL JOIN), e não de junção externa. A junção externa pode usar qualquer condição de junção (ON) e não se limita a colunas homônimas.

Alternativa D — ❌ Incorreta

Na junção natural, não se utiliza a cláusula ON. Ela automaticamente iguala todas as colunas com nomes idênticos das duas tabelas. A alternativa erra ao mencionar “ON” e “coluna indicada”, que são características de uma junção com condição explícita.

Alternativa E — ✅ Correta ⟵ GABARITO

A junção externa à esquerda (LEFT OUTER JOIN) realmente recupera todas as linhas da junção interna (INNER JOIN) mais as linhas da tabela à esquerda que não possuem correspondência na tabela à direita, preenchendo os campos da tabela direita com NULL.

NÃO CAIA NESSA!

A banca troca as definições: self-join é descrito como outer join (B), outer join é descrito como natural join (C), natural join é descrito como algo com ON (D). Decore: natural join = colunas homônimas SEM ON; self join = tabela consigo mesma; outer join = preserva linhas sem correspondência.

Link permanente: /questoes/qq897096