# Session One: Recomeçar | SQL autor: Isabela Silva Sousa [toc] ## Modelagem 1: Tabela Gêneros / Tabela Filmes >[color=red]Create script ```sql= create table TB_Generos ( ID_Genero int primary key auto_increment, DS_Genero varchar(100), VL_Ativo bool ); create table TB_Filmes ( ID_Filme int primary key auto_increment, NM_Filme varchar(100), ID_Genero int, VL_Avaliacao decimal(15,2), BT_Disponivel bool, DT_Lancamento date, foreign key (ID_Genero) references TB_Generos (ID_Genero) ); ``` >[color=blue] Insert script ```sql= insert into TB_Generos (DS_Genero, VL_Ativo) values ('ação', true), ('Musical', true), ('Romance', true), ('Terror', true); insert into TB_Filmes (NM_Filme, ID_Genero, VL_Avaliacao, BT_Disponivel, DT_Lancamento) values ('Grease — Nos Tempos da Brilhantina', 2, 9.8, true, '1978-06-16'), ('Vingadores: Ultimato', 1, 9.8, true, '2019-04-25'), ('Como Eu Era Antes de Você', 3, 9.9, true, '2016-06-16'), ('Sobrenatural: A Última Chave', 4, 8.7, true, '2018-01-16'), ('High School Musical 2', 2, 7.9, true, '2007-10-07'), ('Um espião e meio', 1, 8.7, true, '2016-08-11'), ('Liga da Justiça', 1, 9.8, true, '2017-11-07'), ('Power Rangers - O Filme', 1, 8.7, true, '2017-03-27'), ('Deadpool 2', 1, 9.8, true, '2018-05-17'), ('Mulher-Maravilha', 1, 9.9, true, '2017-06-01'), ('Descendentes 3', 2, 8.5, true, '2019-08-02'), ('Trolls 2', 2, 9.9, true, '2020-10-08'), ('A Cinco Passos de Você', 3, 9.9, true, '2019-03-21'), ('Me Chame Pelo Seu Nome', 3, 8.7, true, '2018-01-18'), ('Annabelle 3: De Volta Para Casa', 4, 8.6, true, '2019-06-27'); ``` >[color=yellow] Update script ```sql= UPDATE TB_Filmes SET VL_Avaliacao=9.9 WHERE ID_Filme=1; UPDATE TB_Filmes SET BT_Disponivel=false WHERE ID_Filme=11; DELETE FROM TB_Filmes WHERE ID_Filme = 9; DELETE FROM TB_Filmes WHERE ID_Filme = 11; ``` >[color=purple] Select script ```sql= SELECT G.DS_Genero, F.NM_filme, F.VL_Avaliacao, F.BT_Disponivel, F.DT_Lancamento FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE G.DS_Genero = 'Ação' AND F.BT_Disponivel = true AND G.VL_Ativo = true ORDER BY G.DS_Genero, F.NM_Filme; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE F.NM_Filme LIKE '%a%' AND F.ID_Genero LIKE '%a%'; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE F.BT_Disponivel=true AND F.VL_Avaliacao >8; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE F.DT_Lancamento BETWEEN "2010" AND "2020"; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE F.DT_Lancamento BETWEEN "2010" AND "2020" AND character_length(F.NM_Filme) < 10; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE year(F.DT_Lancamento) IN (2016); SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE F.VL_Avaliacao = 9.9 OR F.NM_Filme NOT LIKE '%o%'; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE VL_Avaliacao <= 8.7; SELECT F.NM_Filme FROM TB_Filmes F INNER JOIN TB_Generos G ON F.ID_Genero = G.ID_Genero WHERE F.ID_Genero= 2; ``` >[color=hotpink] Mer ![](https://i.imgur.com/ViCe4HM.png) ## Modelagem 2: Tabela Turmas / Tabela Alunos >[color=red]Create script ```sql= CREATE TABLE TB_Genero ( NM_Turma varchar(100), NR_Ano_Letivo int, NM_Curso varchar(100) ); CREATE TABLE TB_Alunos ( ID_Aluno int primary key auto_increment, NM_Aluno varchar(100), DS_Sexo varchar(100), ID_Turma int, NR_Chamada int, TP_Status varchar(1), FOREIGN KEY (ID_Turma) REFERENCES TB_Turmas(ID_Turma) ); ``` >[color=blue] Insert script ```sql= INSERT INTO TB_Turmas (NM_Turma, NR_Ano_Letivo, NM_Curso) VALUES ('Inglês M', 2020, 'Inglês'), ('Inglês N', 2020, 'Inglês'), ('Info D', 2020, 'Informatica'), ('Info A', 2020, 'Informatica'); INSERT INTO TB_Alunos (NM_Aluno, DS_Sexo, ID_Turma, NR_Chamada, TP_Status) VALUES ('Ana luiza Partenazi Lopez', 'Feminino', 2, 3, 'F'), ('Isabelly de Souza Nascimento', 'Feminio', 4, 15, 'F'), ('Maria luiza Ribeiro dos Santos', 'Feminino', 1, 24, 'F'), ('Matheus Paulino de Oliveira', 'Masculino', 3, 26, 'F'), ('Leonardo Ribeiro de Souza', 'Masculino', 1, 18, 'F'), ('Luis Ricardo Oliveira', 'Masculino', 4, 24, 'D'), ('Isabela silva sousa', 'Feminino', 1, 17, 'F'), ('Julia Rodriguez Silva', 'Feminino', 2, 18, 'D'), ('João Pedro Rodriguez Oliveira', 'Masculino', 3, 28, 'D'), ('Guilherme Nascimento Gomes', 'Masculino', 1, 15, 'D'); ``` >[color=yellow] Update script ```sql= UPDATE TB_Alunos SET TP_Status='F' WHERE ID_Aluno=10; UPDATE TB_Alunos SET NR_Chamada=26 WHERE ID_Filme=9; DELETE FROM TB_Alunos WHERE ID_Aluno = 8; DELETE FROM TB_Alunos WHERE ID_Aluno = 2; ``` >[color=purple] Select script ```sql= SELECT T.NM_Turma, T.NR_Ano_Letivo, T.NM_Curso, A.NM_Aluno, A.DS_Sexo, A.NR_Chamada, A.TP_Status FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma; SELECT T.NM_Turma, A.NM_Aluno, A.NR_Chamada FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma ORDER BY T.NM_Turma; SELECT * FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE T.NM_Turma = 'I' ORDER BY A.NM_Aluno; SELECT T.NR_Ano_Letivo, T.NM_Turma, A.NM_Aluno, A.NR_Chamada, A.DS_Sexo FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE A.TP_Status = 'F' AND T.NR_Ano_Letivo >= 2020 ORDER BY T.NM_Turma; SELECT A.NM_Aluno, A.DS_Sexo FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE T.NM_Turma BETWEEN 'g' and 'f' AND A.DS_Sexo = 'Masculino' ORDER BY T.NR_Ano_Letivo; SELECT A.NR_Chamada FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE A.NM_Aluno NOT LIKE '%M%'; SELECT A.NM_Aluno FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE A.NR_Chamada >= 24; SELECT A.NM_Aluno, length(A.NM_Aluno) FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma; SELECT A.NM_Aluno FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE A.NM_Aluno LIKE '%e%' AND A.TP_Status = 'D'; SELECT A.NM_Aluno FROM TB_Alunos A INNER JOIN TB_Turmas T ON A.ID_Turma = T.ID_Turma WHERE A.NM_Aluno NOT LIKE '%u%' OR A.DS_Sexo = 'Masculino'; ``` >[color=hotpink] Mer ![](https://i.imgur.com/VK6LHdB.png)
{"metaMigratedAt":"2023-06-15T23:45:11.730Z","metaMigratedFrom":"Content","title":"Session One: Recomeçar | SQL","breaks":true,"contributors":"[{\"id\":\"efa8ac71-fa69-4ab5-8a89-20016d037e45\",\"add\":7055,\"del\":1}]"}
Expand menu