# Final Session | SQL
**Author:** Matheus Rafael Morato Rocha
**Turma:** InfoC
**Número:** 40
[TOC]
## Modelagem 1: Catálogo Loja Apps
> Create script
```sql=
CREATE TABLE tb_CatalogoApps (
id int primary key auto_increment,
nm_nome varchar(100),
nm_genero varchar(100),
bl_disponivelApple bool,
bl_disponivelandroid bool,
dt_UltimaAtt date,
vl_Tamanho decimal(10,2),
nm_criador varchar(100),
vl_avaliacao decimal(10,2),
vl_TotalDowloads decimal(10,3)
);
```
> Insert script
```sql=
insert into tb_CatalogoApps
(nm_nome,nm_genero,bl_disponivelApple,bl_disponivelandroid,dt_UltimaAtt,vl_Tamanho,nm_criador,vl_avaliacao,vl_TotalDowloads)
values ("Discord","Bate Papo",true,true,'2021-04-01',67.04,"Discord inc",4.5,100.000),
("WhatsApp","Bate Papo",true,true,'2021-04-13',51.52,"WhatsApp LLC",4.2,5.000),
("Free Fire","Jogos",true,true,'2021-02-08',689,"Garena",4.3,500.000);
```
> Select script
```sql=
-- registros 1
select *
from tb_paises
where vl_PIB <= 4.000
order by vl_PIB asc;
-- registros 2
select *
from tb_paises
where dt_aniversario between '1800-01-01' and '1899-01-01'
order by dt_aniversario asc;
```
## Modelagem 2: Países
> Create script
```sql=
CREATE TABLE tb_paises (
id int primary key auto_increment,
nm_pais varchar(100),
nm_sigla varchar(100),
vl_populacao decimal(10,3),
vl_area decimal(10,3),
dt_aniversario date,
vl_PIB decimal(10,3),
nm_continente varchar(100),
nm_capital varchar(100),
nm_idioma varchar(100)
);
```
> Insert script
```sql=
insert into tb_paises
(nm_pais,nm_sigla,vl_populacao,vl_area,dt_aniversario ,vl_PIB, nm_continente,nm_capital,nm_idioma)
values ("Brasil","BRA",211.755,8.510,'1822-09-10',3.078,"America do Sul","Brasília","Português"),
("Japão","JPN",126.440,377.975,'1947-05-03',4.123,"Ásia Oriental","Tóquio","Japonês"),
("Canadá","CA",38.005,9.984,'1867-06-01',1.808,"America do Norte","Ottawa","Inglês e francês");
```
> Select script
```sql=
-- registros 1
select *
from tb_paises
where vl_PIB <= 4.000
order by vl_PIB asc;
-- registros 2
select *
from tb_paises
where dt_aniversario between '1800-01-01' and '1899-01-01'
order by dt_aniversario asc;
```
## Modelagem 3: Clube Futebol
> Create script
```sql=
CREATE TABLE tb_ClubeFutebol (
id int primary key auto_increment,
nm_nome varchar(100),
nm_sigla varchar(100),
nm_pais varchar(100),
nm_cidade varchar(100),
dt_fundacao date,
vl_titulos decimal(10),
nm_presidente varchar(100),
nm_estadio_capa decimal(10,3),
nm_estadio varchar(100)
);
```
> Insert script
```sql=
insert into tb_ClubeFutebol
(nm_nome,nm_sigla,nm_pais,nm_cidade,dt_fundacao,vl_titulos, nm_presidente,nm_estadio_capa,nm_estadio)
values ("Vasco","SFC","Brasil","Rio De Janeiro",'1898-08-21',13,"Jorge Salgado",21.880,"São Januário"),
("Santos","VG","Brasil","Santos",'1912-04-14',16," Andrés Rueda",16.068,"Vila Belmiro"),
("Flamengo","CRF","Brasil","Rio De Janeiro",'1895-11-15',16," Rodolfo Landim",4.000,"Gávea");
```
> Select script
```sql=
-- registros 1
select * from
tb_ClubeFutebol
where dt_fundacao between '1890-01-01' and '1899-01-01'
order by dt_fundacao asc;
-- registros 2
select * from
tb_ClubeFutebol
where nm_cidade = "Rio De Janeiro";
```
## Modelagem 4: Música
> Create script
```sql=
CREATE TABLE tb_musica (
id int primary key auto_increment,
nm_nome varchar(100),
nm_artista varchar(100),
nm_album varchar(100),
nm_genero varchar(100),
dt_lancamento date,
vl_views decimal(10,6),
vl_likes decimal(10,3),
tp_duracao time
);
```
> Insert script
```sql=
insert into tb_musica
(nm_nome,nm_artista,nm_album,nm_genero,dt_lancamento,vl_views, vl_likes,tp_duracao)
values ("Rockstar Made","Playboi Carti","Whole Lotta Red","Trap",'2020-12-25',2.455,158.450,'00:03:29'),
("THE SCOTTS","Travis scott","THE SCOTTS","Trap",'2019-10-19',40.562,1.520,'00:02:47'),
("Feeling","Juice WRLD","Death Race For Love","Trap",'2018-05-21',20.562,152.000,'00:03:21');
```
```sql=
-- registros 1
select *
from tb_musica
where dt_lancamento between '2019-01-01' and '2021-01-01'
order by dt_lancamento asc;
-- registros 2
select *
from tb_musica
where vl_views >= 20.562000
order by vl_views asc;
```
## Modelagem 5: Concessionária
> Create script
```sql=
CREATE TABLE tb_carro(
id int primary key auto_increment,
nm_modelo varchar(255),
nm_marca varchar(255),
dt_anofabricação date,
dt_anomodelo date,
tp_cor varchar(255),
vl_preco decimal(10,3),
nr_kiloetragem decimal(10),
bt_arcondicionado bool,
bt_direcaohidraulica bool
);
```
> Insert script
```sql=
insert into tb_carro
(nm_modelo,nm_marca,dt_anofabricação,dt_anomodelo,tp_cor,vl_preco,nr_kiloetragem,bt_ arcondicionado,bt_direcaohidraulica)
values("Mercedes C-63
AMG","Mercedes-Benz",'2010-01-01','2008-01-01',"Preto",116.900,72000,true,true),
("Corolla xli","Toyata",'2008-01-01','2005-01-01',"cinza",28.900,100000,true,true),
("corsa Hat","Chevrolet",'2009-01-01','2004-01-01',"Preto",6.500,10700,true,false);
```
```sql=
-- registros 1
select *
from tb_carro
where dt_anofabricação >= '2010-01-01'
order by dt_anofabricação asc;
-- registros 2
select *
from tb_carro
```
## Modelagem 6: Computador
> Create script
```sql=
CREATE TABLE tb_computador (
id int primary key auto_increment,
nm_marca varchar(100),
nm_processador varchar(100),
vl_memóriaRAM decimal(10),
vl_armazenamento decimal(10,3),
bl_sistemaOP varchar(100),
bl_Office bool,
vl_tamanho decimal(10,3),
vl_preco decimal(10,3)
);
```
> Insert script
```sql=
insert into tb_computador (nm_marca,nm_processador,vl_memóriaRAM,vl_armazenamento,bl_sistemaOP,bl_Office,vl_tamanho,vl_preco)
values ("Kabum","Ryzen 3",8,1,"Windows",true,12000,2.356),
("Kabum","Ryzen 5",16,2,"Windows",false,15000,4.389),
("Kabum","Intel I7",32,2,"Windows",true,17000,7.053);
```
```sql=
select * from tb_computador;
-- registros 1
SELECT nm_processador,
vl_tamanho
from tb_computador
where nm_processador like 'R%';
-- registros 2
SELECT vl_preco,
nm_processador,
vl_memóriaRAM
vl_armazenamento
from tb_computador;
```