Fórum Banco de dados - Dieferença entre junção Interna e Externa #620135

16/06/2023

0

qual a diferença entre a junção interna e externa?
Victor

Victor

Responder

Posts

16/06/2023

Rael Henrique

qual a diferença entre a junção interna e externa?



Basicamente o inner join irá retornar informações de duas ou mais tabelas que estejam relacionadas através da igualdade entre os atributos das tabelas. Quanto ao outer join força a exibição de todos os dados das duas tabelas caso seja executado na sua forma de full outer join.
Responder

Gostei + 0

19/06/2023

Arthur Heinrich

qual a diferença entre a junção interna e externa?


Imagine que você tem duas tabelas A e B, ambas com a coluna ID, com os seguintes valores:

1
2
3
4
5
6
7
8
9
10
11
12
13
Tabela A:
ID
--
 1
 2
 4
 
Tabela B:
ID
--
 1
 2
 3


Agora você quer fazer o join entre elas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
select
  A.ID as A,
  B.ID as B
from
  A inner join B on A.ID = B.ID;
 
O banco vai retornar os dados que existem em ambas tabelas:
 
A B
- -
1 1
2 2
 
select
  A.ID as A,
  B.ID as B
from
  A left outer join B on A.ID = B.ID;
 
O banco vai retornar todos os dados que existem na tabela A e os correspondentes que existirem na B:
 
A B
- ----
1 1
2 2
4 null
 
Em princípio, também poderia utilizar:
 
select
  A.ID as A,
  B.ID as B
from
  A right outer join B on A.ID = B.ID;
 
O banco vai retornar todos os dados que existem na tabela B e os correspondentes que existirem na A:
 
A    B
---- -
1    1
2    2
null 3
 
select
  A.ID as A,
  B.ID as B
from
  A full outer join B on A.ID = B.ID;
 
O banco vai retornar todos os dados que existem nas tabelas A e B, com os correspondentes que existirem na outra tabela:
 
A    B
---- ----
1    1
2    2
4    null
null 3

Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar