FC ConcursosFC Concursos

Flashcard FC370281

Como calcular o número de linhas retornadas por INNER, LEFT, RIGHT, FULL e CROSS JOIN a partir das contagens das tabelas e da interseção de chaves?

Linguagem SQL

FGV · 2024

De acordo com o assunto TI Banco de Dados: Linguagem SQL, responda:

Como calcular o número de linhas retornadas por INNER, LEFT, RIGHT, FULL e CROSS JOIN a partir das contagens das tabelas e da interseção de chaves?
Mostrar resposta e comentário

Resposta

Resposta direta:

Variáveis: a = |A|, b = |B|, i = |A ∩ B|, u = |A ∪ B|

INNER JOIN: i
LEFT JOIN: a (assumindo chave única na esquerda)
RIGHT JOIN: b (assumindo chave única na direita)
FULL OUTER JOIN: u = a + b − i
CROSS JOIN: $$a \times b$$

Explicação:
INNER usa a interseção; LEFT/RIGHT retornam todas as linhas da tabela externa;
FULL combina todas as chaves (união) e pode ser obtido por u = a + b − i;
CROSS é o produto cartesiano.
Assume correspondência 1:1 por chave para aplicar estas fórmulas.




Veja como foi cobrado:
https://flashcardsconcursos.com.br/portal/flashcard/359629

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo