---
# System prepended metadata

title: Session one/Tabela filme

---

# Session one/Tabela filme

Guilherme hegeler Sousa
N°13
Info:A

[TOC]

## Tabela genero

>Create Script
```sql=
Create table TB_genero(
  ID_genero		int primary key auto_increment,
  DS_genero		Varchar(200),
  BT_ativo		Bool
  );
```

>Insert Script
```sql=
 insert into TB_genero (DS_genero, BT_ativa )
values ("comedia", true),
       ("Terror", true),
       ("ação", true),
       ("Drama", true),
       ("Suspense", true);
 
 ```


## Tabela filme
>Create Script
```sql=
  Create Table TB_filmes(
    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)
    );
```

>Insert Script

```sql=
 Insert into TB_filmes(NM_filme, ID_genero, VL_avaliacao, BT_disponivel, DT_lancamento)
 Values ("Gente Grande", 1, "9.8", true, "2010-09-24"),
 		("Missão Impossível", 3, "9.6", true, "1996-07-12"),
        ("Hush", 5, "9.7", true, "2016-03-12"),	
        ("Velozes e Furiosos 5", 3, "9.1", true, "2011-04-15"),
        ('Velozes e furiosos 6', 1, "9.5", true, '2016-03-24'),
        ('RED', 3, '8.7', true, '2016-03-24'),
        ('Gente Grande 2', 1, '10.0', true, '2013-8-16'),
        ('Radioactive', 4, '10.0', true, '2020-03-01'),
        ('Era uma vez um sonho', 4, '9.5', true, '2020-09-12'),
        ('Relatos do Mundo', 4, '8.5', true, '2020-01-21');
```
## Sql Pricipal
```sql=
select NM_filme,
       DS_genero,
       VL_avaliacao,
       BT_disponivel,
       DT_lancamento
       
from TB_filmes f

inner join TB_genero g
        on f.ID_genero = g.ID_genero
```

# Desafios

### Desafio 1
>Inserir 10 registros na tabela.

```sql=
Insert into TB_filmes(NM_filme, ID_genero, VL_avaliacao, BT_disponivel, DT_lancamento)
values  ("Gente Grande", 1, "9.8", true, "2010-09-24"),
	("Missão Impossível", 3, "9.6", true, "1996-07-12"),
        ("Hush", 5, "9.7", true, "2016-03-12"),	
        ("Velozes e Furiosos 5", 3, "9.1", true, "2011-04-15"),
        ('Velozes e furiosos 6', 1, "9.5", true, '2016-03-24'),
        ('RED', 3, '8.7', true, '2016-03-24'),
        ('Gente Grande 2', 1, '10.0', true, '2013-8-16'),
        ('Radioactive', 4, '10.0', true, '2020-03-01'),
        ('Era uma vez um sonho', 4, '9.5', true, '2020-09-12'),
        ('Relatos do Mundo', 4, '8.5', true, '2020-01-21');

```
### Desafio 2
>Alterar 2 registros da tabela.
```sql=
       Update TB_filmes
       Set VL_avaliacao = "9.7"
       Where ID_filme = 2;
       
       Update TB_filmes
       Set DT_lancamento = "2016-04-15"
       Where ID_filme = 3;

```
### Desafio 3
>Remover 2 registros da tabela.
```sql=
   DELETE FROM TB_filmes where ID_filme = 1;
       
       DELETE FROM TB_filmes where NM_filme = "Radioactive";

```
### Desafio 4
>Consultar todos os filmes com gênero igual a ‘Ação’.
```sql=
        where  g.ID_genero = 3
```
### Desafio 5
>Consultar todos os filmes que possuam o nome e gênero contendo a letra ‘a’.
```sql=
where f.NM_filme like "%a%"
          and   g.DS_genero like "%a%";

```
### Desafio 6
>Consultar todos os filmes que estejam disponíveis e com avaliação maior que 8.
```sql=
 where f.VL_avaliacao > 8
       and f.BT_disponivel = true

```
### Desafio 7
>Consultar todos os filmes que foram lançados entre 2010 e 2020 com nome de filme menor que 10 caracteres.

```sql=
 where DT_lancamento between "2010-01-01"  and "2020-01-01"
   and length(NM_filme) < 10;

```
### Desafio 8
>Crie mais 5 consultas personalizadas conforme sua vontade que explore filtros como:
>, >=, <, <=, =, <>, LIKE, IN, BETWEEN, Funções de Texto/Número/Data.
```sql=
   1- where NM_filme like "%U%"
   
   2- where DT_lancamento >= "01-01-2015"
   
   3- where BT_disponivel = false
   
   4- where VL_avaliacao <= '9.0'
   
   5- where g.ID_genero between 3 and 5;
```