No contexto de uma consulta SQL com o objetivo de retornar ...
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