One For All foi a culminância do bloco proposto para o aprendizado de modelagem de bancos de dados, JOIN, manipulação de strings e operações matemáticas no SQL.
Para a realização do projeto foi oferecida uma tabela não normalizada, sendo seu desafio construir um Modelo Entidade Relacionamento através da estruturação do banco a partir das 3 primeiras formas normais. Com esse modelo ER, o banco foi então criado e populado, para ao longo do projeto serem construídas queries de manipulação de strings, operações e consultas compostas.
Foi recebido uma planilha com registros acerca de um app de músicas. Havia informações sobre:
- Artistas e álbuns
- Usuários, idades e plano assinado
- Canções e histórico de reproduções por usuário
Este foi o diagrama que desenvolvi durante a execução do projeto
Todas as queries utilizadas durante o desenvolvimento deste projeto estão na raiz do repositório nomeados de desafio1.sql
a desafio11.sql
.
- Manipulação de strings como
UCASE
,LCASE
,REPLACE
,LEFT
,RIGHT
,CHAR_LENGTH
eSUBSTRING
- Condicionais
IF
eCASE
- Funções matemáticas como
DIV
,MOD
,ROUND
,CEIL
,FLOOR
,POW
,SQRT
eRAND
- Calcular intervalos de data com
DATEDIFF
eTIMEDIFF
- Funções de agregação como
AVG
,MIN
,MAX
,SUM
eCOUNT
- Filtrar dados agrupados com
HAVING
- Agrupar dados com
GROUP BY
- Combinar tabelas com
INNER JOIN
,LEFT JOIN
ERIGHT JOIN
- Criar banco de dados com terceira forma normal
- Tipos de relacionamentos entre tabelas:
1:1
,1:N
EN:N
- Construir diagrama de entidade-relacionamento