# 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}]"}