# Session One | Recomeçar **Banco de Dados** >[color=purple]**Autor:** Letícia Rodrigues da Silva **Turma:** IndoD **Número:** 25 [TOC] ## Script tabela genero >TB_GENERO ```sql= CREATE TABLE tb_Genero ( id_Genero int primary key auto_increment, ds_Genero varchar(200), bt_Ativo bool ); ``` ## Script tabela filme >TB_FILME ```sql= CREATE TABLE tb_Filme ( id_Filme int primary key auto_increment, nm_Filme varchar(200), id_Genero int, nm_Autor varchar(200), vl_avaliacao decimal(10,1), bt_Disponivel bool, dt_Lancamento date, Foreign key (id_Genero) References tb_Genero (id_Genero) ); ``` ## Insert e values tb_genero ```sql= INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Ação', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Romance', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Terror', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Comédia', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Aventura', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Documentário', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Drama', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Musical', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Suspense', True); INSERT INTO tb_Genero (ds_Genero, bt_Ativo) VALUES ('Ficção', True); ``` ## Insert e values tb_filme ```sql= INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('A Culpa é das estrelas', 2, 'John Green', 4.8, True, '2014-06-05'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('After', 2, 'Jenny Gage', 4.0, True, '2019-04-11'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Godzilla', 1, 'Michael Dougherty', 4.3, True, '2019-12-18'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Jogador N1', 10, 'Steven Spielberg', 4.6, True, '2018-03-29'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Uma Sombra na Nuvem', 1, 'Roseanne Liang', 2.2, True, '2020-12-31'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('O Dilema das Redes', 6, ' Jeff Orlowski', 4.1, True, '2020-09-09'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Mulher Maravilha', 5, 'Patty Jenkins', 3.7, True, '2020-12-17'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Scooby', 3, 'Tony Cervone', 4.5, True, '2020-08-06'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Através da Sombra', 9, 'Walter Lima Jr.', 2.5, True, '2016-11-10'); INSERT INTO tb_Filme (nm_Filme, id_Genero, nm_Autor, vl_Avaliacao, bt_Disponivel, dt_Lancamento) VALUES ('Matrix', 10, 'Lana Wachowski', 4.6, True, '1999-05-21'); ``` ## UPDATE ```sql= UPDATE tb_Filme SET vl_Avaliacao = 4.5 WHERE id_Filme = 3; UPDATE tb_Filme SET bt_Disponivel = False WHERE id_Filme = 6; ``` ## DELETE ```sql= DELETE FROM tb_Genero WHERE id_Genero = 8; DELETE FROM tb_Filme WHERE id_Filme = 5; ``` ## Consultas ```sql= SELECT * FROM tb_Filme F; SELECT * FROM tb_Genero G; ``` **Consultar todos os filmes com gênero igual a ‘Ação’.** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE G.ds_Genero = 'Ação'; ``` **Consultar todos os filmes que possuam o nome e gênero contendo a letra ‘a’.** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE nm_Filme like '%a%' AND ds_Genero like '%a%'; ``` **Consultar todos os filmes que estejam disponíveis e com avaliação maior que 8.** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE vl_Avaliacao > 4.5; Como eu coloquei avaliação de no máximo 4.8, eu mudei o valor de 8 para 4.5 ``` **Consultar todos os filmes que foram lançados entre 2010 e 2020 com nome de filme menor que 10 caracteres.** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE dt_Lancamento BETWEEN ('2010-1-1') AND ('2020-9-9') AND character_length(nm_Filme) <= 10; ``` ## 5 consultas a mais >**1** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE F.id_Genero like '%2%'; ``` >**2** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE vl_Avaliacao <= 4.0; ``` >**3** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE id_Filme IN (5, 3, 9); ``` >**4** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE dt_Lancamento BETWEEN ('2018-5-30') AND ('2020-12-31'); ``` >**5** ```sql= SELECT * FROM tb_Filme F INNER JOIN tb_Genero G ON F.id_Genero = G.id_Genero WHERE day(dt_Lancamento) >= month(dt_Lancamento); ```
{"metaMigratedAt":"2023-06-15T23:12:17.229Z","metaMigratedFrom":"Content","title":"Session One | Recomeçar","breaks":true,"contributors":"[{\"id\":\"f2f98191-1ff5-4afd-8e66-66ff77c4c5b1\",\"add\":5595,\"del\":177}]"}
Expand menu