# Session One: Recomeçar - Parte 1 Autor: Jonathan Fernando Costa Galo [toc] # Exercícios Práticos - Modelagens no DB Fiddle >Criação da Tabela de Filmes ```sql= CREATE TABLE TB_GENERO( id_genero int primary key auto_increment, ds_genero varchar(200), bt_ativo bool ); CREATE TABLE TB_FILME ( id_filme int primary key auto_increment, nm_filme varchar(200), id_genero int, vl_avaliacao decimal(15,2), bt_disponivel bool, dt_lancamento date, foreign key (id_genero) references TB_GENERO (id_genero) ); ``` >Inserir 10 registros na Tabela ```sql= INSERT INTO TB_GENERO (ds_genero, bt_ativo) VALUES ('Ação', true), ('Comédia', true), ('Drama', true), ('Terror', true); INSERT INTO TB_FILME (nm_filme, id_genero, vl_avaliacao, bt_disponivel, dt_lancamento) VALUES ('Velozes e furiosos 6', 1, 4.7, true, '2013-05-24'), ('RED', 1, 4.2, true, '2010-11-12'), ('Gente Grande 2', 2, 4.6, true, '2010-09-24'), ('A Maldição da Casa Winchester', 4, 3.7,true, '2018-03-01'), ('Estrelas Além do Tempo', 3, 4.8, true, '2017-02-02'), ('Como Eu Era Antes de Você', 3, 4.8, true, '2016-06-16'), ('Charlie´s Angels', 2, 3.4, true, '2019-11-14'), ('Sol da Meia Noite', 3, 4.6, true, '2018-03-22'); ``` >Códigos para Alterar 2 registros da Tabela (UPDATE) ```sql= UPDATE TB_FILME SET vl_avaliacao = 4.8 WHERE id_filme = 4; UPDATE TB_FILME SET bt_disponivel = false WHERE id_filme = 5; ``` >Códigos para Remoção de 2 registros na Tabela (DELETE) ```sql= DELETE FROM TB_FILME WHERE id_filme = 2; DELETE FROM TB_FILME WHERE id_filme = 6; ``` >Códigos para consultar todos os filmes com gênero igual a "Ação" ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE G.ds_genero = 'Ação' ``` >Códigos para consultar todos os filmes que possuam o nome e gênero contendo a letra "a" ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE F.nm_filme = 'A%' AND G.ds_genero = 'A%' ``` >Códigos para consultar todos os filmes que estejam disponíveis e com avaliação maior que 4. [//]: # "A avaliação dos filmes da tabela vão de 0 a 5 estrelas" ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE F.bt_disponivel = true AND F.vl_avaliacao > 4; ``` >Códigos para consultar todos os filmes que foram lançados entre 2010 e 2020 com nome de filme menor que 10 caracteres. ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE F.dt_lancamento BETWEEN '2010-01-01' AND '2020-12-31' ``` >Códigos para criar 5 consultas personalizadas >Consulta 1 ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE F.vl_avaliacao <= 3.5 ``` >Consulta 2 ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE bt_disponivel = false ``` >Consulta 3 ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE F.dt_lancamento >= '2015-07-03' ``` >Consulta 4 ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE G.ds_genero = 'Terror' ``` >Consulta 5 ```sql= SELECT G.ds_genero, F.nm_filme, F.vl_avaliacao, F.bt_disponivel, F.dt_lancamento FROM TB_FILME F INNER JOIN TB_GENERO G ON F.id_genero = G.id_genero WHERE G.ds_genero LIKE '%r%' OR '%a%' ```
{"metaMigratedAt":"2023-06-15T23:25:56.233Z","metaMigratedFrom":"Content","title":"Session One: Recomeçar - Parte 1","breaks":true,"contributors":"[{\"id\":\"f59e6c25-3cb1-4556-be8b-0ad8b709be8c\",\"add\":4835,\"del\":105}]"}
Expand menu