SóProvas


ID
5474638
Banca
CESGRANRIO
Órgão
Banco do Brasil
Ano
2021
Provas
Disciplina
Banco de Dados
Assuntos

Para gerar um gráfico de dispersão, um programador precisava consultar duas tabelas, T1 e T2. Ele decidiu, então, usar um LEFT JOIN, como em

SELECT * FROM T1 LEFT JOIN T2 USING (CHAVE);

Essa consulta resultou em 214 linhas.

Por motivos de segurança, ele fez outra consulta semelhante, apenas trocando o LEFT JOIN por um JOIN, e essa segunda consulta resultou em 190 linhas.

O que pode explicar corretamente a quantidade diferente de linhas nas consultas realizadas?

Alternativas
Comentários
  • O LEFT JOIN vai imprimir todas as linha de T1, independente de existir correspondência em T2.

    Ao trocar por JOIN, vai imprimir apenas os registros que possuem correspondência em ambos T1 e T2.

    Por que reduziu de 214 para 190? Porque nem todo registro de T1 possui correspondência em T2 (Gab C)

     

    Por que não é a D? Vamos supor que tanto LEFT JOIN quanto o JOIN tenham resultado em 214 linhas, ou seja, todo registro de T1 possui correspondência em T2.

    O número de linhas nesses JOINs vai mudar se adicionarmos linhas em T2 sem correspondência em T1 (Alternativa D)? Não, vai continuar 214 em ambos os JOINs.

    E se adicionarmos linhas em T1 sem correspondência em T2 (Alternativa C)? Sim, o LEFT JOIN terá mais de 214 linhas. Ou seja, "a quantidade diferente de linhas nas consultas" explica-se por "T1 possui linhas cujo valor de CHAVE não está presente na T2"

     

    Gab da Banca: D

    Na minha opinião: C