-
Notifications
You must be signed in to change notification settings - Fork 0
/
innerjoin.sql
131 lines (110 loc) · 4.65 KB
/
innerjoin.sql
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
use dbfilmesturmab;
select * from tblgenero;
select tblFilme.nomeFilme,
tblFilme.nomeOriginalFilme,
tblClassificacao.nomeClassificacao,
tblGenero.nomeGenero,
tblAtor.nomeAtor
from tblClassificacao inner join tblfilme
on tblCLassificacao.idClassificacao = tblFilme.idClassificacao
inner join tblfilmegenero
on tblFilme.idFilme = tblFilmeGenero.idFilme
inner join tblGenero
on tblGenero.idGenero = tblFilmeGenero.idGenero
inner join tblAtorFilme
on tblFilme.idFilme = tblAtorFilme.idFilme
inner join tblAtor
on tblAtor.idAtor = tblAtorFilme.idAtor
where year(tblAtor.dataNascimentoAtor) >= '1800'
order by tblAtor.nomeArtisticoAtor asc;
select tblfilme.nomeFilme,
tblFilme.dataLancamentoFilme,
tblFilme.sinopseFilme,
tblClassificacao.nomeClassificacao,
tblGenero.nomeGenero,
tblAtor.nomeArtisticoAtor,
tblAtor.dataNascimentoAtor,
tblDiretor.nomeDiretor,
tblRoteirista.nomeRoteirista,
tblNacionalidade.nomeNacionalidade as Nacionalidade
from tblClassificacao inner join tblFilme
/* on tblFilme.idClassificacao = tblClassificacao.idClassificacao */
on tblClassificacao.idClassificacao = tblFilme.idClassificacao
inner join tblFilmeGenero
on tblFilme.idFilme = tblFilmeGenero.idFilme
inner join tblGenero
on tblGenero.idGenero = tblFilmeGenero.idGenero
inner join tblAtorFilme
on tblFilme.idFilme = tblAtorFilme.idFilme
inner join tblAtor
on tblAtor.idAtor = tblAtorFilme.idAtor
inner join tblatornacionalidade
on tblAtor.idAtor = tblatornacionalidade.idAtor
inner join tblnacionalidade
on tblNacionalidade.idNacionalidade = tblatornacionalidade.idNacionalidade
inner join tblFilmeDiretor
on tblFilme.idFilme = tblFilmeDiretor.idFilme
inner join tblDiretor
on tblDiretor.idDiretor = tblFilmeDiretor.idDiretor
inner join tblFilmeRoteirista
on tblFilme.idFilme = tblFilmeRoteirista.idFilme
inner join tblRoteirista
on tblRoteirista.idRoteirista = tblFilmeRoteirista.idRoteirista
order by tblFilme.nomeFilme asc, tblAtor.nomeAtor desc
;
select * from tblroteirista;
select * from tblFilme;
insert into tblFilmeRoteirista (idFilme, idRoteirista) values (1,1), (2,2), (2,3);
select * from tblfilmeroteirista;
select * from tblfilmediretor;
select tblAtor.nomeAtor,
tblNacionalidade.nomeNacionalidade,
tblSexo.nomeSexo
from tblAtorNacionalidade inner join tblAtor
on tblAtor.idAtor = tblAtorNacionalidade.idAtor
inner join tblNacionalidade
on tblnacionalidade.idNacionalidade = tblAtorNacionalidade.idNacionalidade
inner join tblSexo
on tblSexo.idSexo = tblAtor.idSexo
;
select tblFilme.nomeFilme,
tblFilme.dataLancamentoFilme,
tblFilme.sinopseFilme,
tblClassificacao.nomeClassificacao,
tblGenero.nomeGenero,
tblAtor.nomeAtor,
tblAtor.dataNascimentoAtor,
tblNacionalidade.nomeNacionalidade,
tblDiretor.nomeDiretor,
tblRoteirista.nomeRoteirista
from tblFilme inner join tblClassificacao
on tblClassificacao.idClassificacao = tblFilme.idClassificacao
inner join tblFilmeGenero
on tblFilme.idFilme = tblFilmeGenero.idFilme
inner join tblGenero
on tblGenero.idGenero = tblFilmeGenero.idGenero
inner join tblAtorFilme
on tblFilme.idFilme = tblAtorFilme.idFilme
inner join tblAtor
on tblAtor.idAtor = tblAtorFilme.idAtor
inner join tblAtorNacionalidade
on tblAtor.idAtor = tblAtorNacionalidade.idAtor
inner join tblNacionalidade
on tblNacionalidade.idNacionalidade = tblAtorNacionalidade.idNacionalidade
inner join tblFilmeDiretor
on tblFilme.idFilme = tblFilmeDiretor.idFilme
inner join tblDiretor
on tblDiretor.idDiretor = tblFilmeDiretor.idDiretor
inner join tblFilmeRoteirista
on tblFilme.idFilme = tblFilmeRoteirista.idFilme
inner join tblRoteirista
on tblRoteirista.idRoteirista = tblFilmeRoteirista.idRoteirista
/*
group by - permite agrupar o resultado do select por colunas específicas,
ele elimina as repetições e manipula o resultado para mostrar para somente
uma vez a ocorrência dos valores.
P.S.: é muito utilizado quando fazemos relações com diversas tabelas
*/
group by tblGenero.nomeGenero, tblAtor.nomeAtor
order by tblFilme.nomeFilme asc, tblAtor.nomeAtor desc;
select * from tblnacionalidade;