Joins no SQL

Joins são usados para pesquisar dados de duas ou mais tabelas baseado em um relacionamento entre algumas colunas destas tabelas.

Tabelas em um banco de dados geralmente estão relacionadas entre sí por meio de chaves.

Uma chave primária é uma coluna (ou uma combinação de colunas) com um valor único para cada linha. Cada valor de chave primária deve ser único na tabela. O propósito é juntar dados entre tabelas sem repetir todos os dados em toda tabela.

Veja a tabela Pessoas:

idsobrenomeprimeiro_nomeenderecocidade
1HansenOlaTimoteivn 10Sandnes
2SvendsonToveBorgvn 23Sandnes
3PettersenKariStorgt 20Stavanger

Observe que a coluna 'id' é a chave primária da tabela Pessoas. Isto significa que não pode haver duas linhas com o mesmo valor de 'id'. A coluna 'id' distingue duas pessoas se elas têm o mesmo nome.

Agora nos temos a tabela Pedidos:
idnumeropessoa_id
1778953
2446783
3224561
4245621
53476415

Perceba que a coluna 'id' é a chave primária na tabela Pedidos e que a coluna 'pessoa_id' refere-se às pessoas na tabela Pessoas sem usar os seus nomes. O relacionamento entre as tabelas Pessoas e Pedidos se dá pela coluna 'pessoa_id' na tabela de Pedidos.

Diferentes tipos de JOINS

Antes de continuar com os exemplos vamos listar os tipos de JOIN que podem ser usados e as diferenças entre eles.
  • INNER JOIN: Retorna uma linha quando o registro existe nas duas tabelas.
  • LEFT JOIN: Retorna todas as linhas da tabela da esquerda mesmo que o registro não exista na da direita.
  • RIGHT JOIN: Retorna todas as linhas da tabela da direita, mesmo que o registronão exista na da esquerda.
  • FULL JOIN: Retorna todas as linhas mesmo que o registro não exista em uma das tabelas.
Fonte

Nenhum comentário:

Postar um comentário