No contexto de uma consulta SQL com o objetivo de retornar ...

Próximas questões
Com base no mesmo assunto
Q1963293 Banco de Dados
No contexto de uma consulta SQL com o objetivo de retornar os resultadas de duas relações, sendo que o resultado desejado envolve todos os registros da primeira relação em conjunto com os resultados dos registros correspondentes à condição da junção da segunda relação, qual instrução deve ser utilizada?
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: Letra E - LEFT JOIN

Para responder a questão, é necessário compreender os diferentes tipos de junção (joins) em SQL. As junções são usadas para combinar linhas de duas ou mais tabelas, com base em uma coluna relacionada entre elas. Existem vários tipos de junções, cada uma retornando um conjunto de resultados específico. Em particular, a questão menciona que desejamos todos os registros da primeira relação, além dos registros que correspondem à condição de junção da segunda relação.

Esta situação é exatamente o que o LEFT JOIN faz. Quando o LEFT JOIN é utilizado, todos os registros da tabela à esquerda (primeira tabela mencionada na cláusula FROM do SQL) são retornados, juntamente com os registros correspondentes da tabela à direita (segunda tabela). Se não houver correspondência, o resultado contém NULL para cada coluna da tabela à direita.

Em contraste, o INNER JOIN retorna apenas registros que têm correspondências em ambas as tabelas, e o RIGHT JOIN funciona de forma análoga ao LEFT JOIN, mas retornando todos os registros da tabela à direita e as correspondências da tabela à esquerda. O OUTER JOIN pode ser especificado como LEFT, RIGHT, ou FULL, mostrando todos os registros quando há uma correspondência em uma das tabelas. Por fim, o JOIN é geralmente interpretado como INNER JOIN se não for explicitamente definido de outra forma.

Portanto, a alternativa correta é a Letra E - LEFT JOIN, pois cumpre a condição de incluir todos os registros da primeira tabela e os registros correspondentes da segunda tabela conforme a condição de junção especificada.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Imagine um Gráfico de Conjuntos (aqueles usados em matemática com intersecção e tal)

Sendo o conjunto A na esquerda e B a direita e uma intersecção entre eles (elementos em comum).

INNER JOIN retorna os registros que são comuns às duas tabelas. (intersecção entre A e B).

A cláusula LEFT JOIN, tem como resultado todos os registros que estão na tabela A (mesmo que não estejam na tabela B) e os registros da tabela B que são comuns à tabela A.

Right Join teremos como resultado todos os registros que estão na tabela B (mesmo que não estejam na tabela A) e os registros da tabela A que são comuns à tabela B.

O Outer Join (também conhecido por Full Outer Join ou Full Join), tem como resultado todos os registros que estão na tabela A e todos os registros da tabela B.

K-ra-Kaaaa! nem pra PF estudei isso!

e-

The result of a left outer join (or simply left join) for tables A and B always contains all rows of the "left" table (A), even if the join-condition does not find any matching row in the "right" table (B). This means that if the ON clause matches 0 (zero) rows in B (for a given row in A), the join will still return a row in the result (for that row)—but with NULL in each column from B.

https://en.wikipedia.org/wiki/Join_(SQL)

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo