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:
id | sobrenome | primeiro_nome | endereco | cidade |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
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:
id | numero | pessoa_id |
---|---|---|
1 | 77895 | 3 |
2 | 44678 | 3 |
3 | 22456 | 1 |
4 | 24562 | 1 |
5 | 34764 | 15 |
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.
Nenhum comentário:
Postar um comentário