Skip to content

Commit

Permalink
Merge pull request #133 from basedosdados/bdpro_mundo_transfermarkt_c…
Browse files Browse the repository at this point in the history
…ompeticoes

[bdpro] mundo_transfermarkt_competicoes
  • Loading branch information
laura-l-amaral authored Jul 28, 2023
2 parents ef3e26a + cd29e77 commit af9b9cb
Show file tree
Hide file tree
Showing 4 changed files with 147 additions and 15 deletions.
9 changes: 0 additions & 9 deletions dbt_project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -172,15 +172,6 @@ models:
mundo_transfermarkt_competicoes:
+materialized: table
+schema: mundo_transfermarkt_competicoes
+post-hook:
- 'CREATE OR REPLACE ROW ACCESS POLICY allusers_filter
ON {{this}}
GRANT TO ("allUsers")
FILTER USING ( (EXTRACT(WEEK from data) <= (EXTRACT( WEEK from CURRENT_DATE())-6) ) OR ano_campeonato<EXTRACT(YEAR from CURRENT_DATE()))'
- 'CREATE OR REPLACE ROW ACCESS POLICY bdpro_filter
ON {{this}}
GRANT TO ("group:[email protected]", "group:[email protected]")
FILTER USING (ano_campeonato=EXTRACT(YEAR from CURRENT_DATE()))'
test_dataset:
+materialized: table
+schema: test_dataset
13 changes: 8 additions & 5 deletions models/mundo_transfermarkt_competicoes/brasileirao_serie_a.sql
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,12 @@
"field": "ano_campeonato",
"data_type": "int64",
"range": {
"start": 2003,
"end": 2023,
"interval": 1}
"start": 2003,
"end": 2023,
"interval": 1}
},
labels = {'tema': 'esporte'})
labels = {'tema': 'esporte'}
)
}}
SELECT
SAFE_CAST(REPLACE (ano_campeonato,".0","") AS INT64) ano_campeonato,
Expand Down Expand Up @@ -48,4 +49,6 @@ SAFE_CAST(REPLACE (chutes_man,".0","") AS INT64) chutes_man,
SAFE_CAST(REPLACE (chutes_vis,".0","") AS INT64) chutes_vis,
SAFE_CAST(REPLACE (chutes_fora_man,".0","") AS INT64) chutes_fora_man,
SAFE_CAST(REPLACE (chutes_fora_vis,".0","") AS INT64) chutes_fora_vis
FROM basedosdados-staging.mundo_transfermarkt_competicoes_staging.brasileirao_serie_a AS t
FROM basedosdados-staging.mundo_transfermarkt_competicoes_staging.brasileirao_serie_a AS t
WHERE (EXTRACT(WEEK FROM SAFE_CAST(data AS DATE)) <= (EXTRACT( WEEK FROM CURRENT_DATE())-6) )
OR SAFE_CAST(ano_campeonato AS INT64)<EXTRACT(YEAR from CURRENT_DATE())
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
{{
config(
schema='mundo_transfermarkt_competicoes',
materialized='table',
partition_by={
"field": "ano_campeonato",
"data_type": "int64",
"range": {
"start": 2003,
"end": 2023,
"interval": 1}
},
labels = {'tema': 'esporte'},
post_hook=['REVOKE `roles/bigquery.dataViewer` ON TABLE {{ this }} FROM "specialGroup:allUsers"',
'GRANT `roles/bigquery.dataViewer` ON TABLE {{ this }} TO "group:[email protected]"'])
}}
SELECT
SAFE_CAST(REPLACE (ano_campeonato,".0","") AS INT64) ano_campeonato,
SAFE_CAST(data AS DATE) data,
SAFE_CAST(horario AS STRING) horario,
SAFE_CAST(REPLACE (rodada,".0","") AS INT64) rodada,
SAFE_CAST(estadio AS STRING) estadio,
SAFE_CAST(arbitro AS STRING) arbitro,
SAFE_CAST(REPLACE (publico,".0","") AS INT64) publico,
SAFE_CAST(REPLACE (publico_max,".0","") AS INT64) publico_max,
SAFE_CAST(time_man AS STRING) time_man,
SAFE_CAST(time_vis AS STRING) time_vis,
SAFE_CAST(tecnico_man AS STRING) tecnico_man,
SAFE_CAST(tecnico_vis AS STRING) tecnico_vis,
SAFE_CAST(REPLACE (colocacao_man,".0","") AS INT64) colocacao_man,
SAFE_CAST(REPLACE (colocacao_vis,".0","") AS INT64) colocacao_vis,
SAFE_CAST(REPLACE (valor_equipe_titular_man,".0","") AS INT64) valor_equipe_titular_man,
SAFE_CAST(REPLACE (valor_equipe_titular_vis,".0","") AS INT64) valor_equipe_titular_vis,
SAFE_CAST(idade_media_titular_man AS FLOAT64) idade_media_titular_man,
SAFE_CAST(idade_media_titular_vis AS FLOAT64) idade_media_titular_vis,
SAFE_CAST(REPLACE (gols_man,".0","") AS INT64) gols_man,
SAFE_CAST(REPLACE (gols_vis,".0","") AS INT64) gols_vis,
SAFE_CAST(REPLACE (gols_1_tempo_man,".0","") AS INT64) gols_1_tempo_man,
SAFE_CAST(REPLACE (gols_1_tempo_vis,".0","") AS INT64) gols_1_tempo_vis,
SAFE_CAST(REPLACE (escanteios_man,".0","") AS INT64) escanteios_man,
SAFE_CAST(REPLACE (escanteios_vis,".0","") AS INT64) escanteios_vis,
SAFE_CAST(REPLACE (faltas_man,".0","") AS INT64) faltas_man,
SAFE_CAST(REPLACE (faltas_vis,".0","") AS INT64) faltas_vis,
SAFE_CAST(REPLACE (chutes_bola_parada_man,".0","") AS INT64) chutes_bola_parada_man,
SAFE_CAST(REPLACE (chutes_bola_parada_vis,".0","") AS INT64) chutes_bola_parada_vis,
SAFE_CAST(REPLACE (defesas_man,".0","") AS INT64) defesas_man,
SAFE_CAST(REPLACE (defesas_vis,".0","") AS INT64) defesas_vis,
SAFE_CAST(REPLACE (impedimentos_man,".0","") AS INT64) impedimentos_man,
SAFE_CAST(REPLACE (impedimentos_vis,".0","") AS INT64) impedimentos_vis,
SAFE_CAST(REPLACE (chutes_man,".0","") AS INT64) chutes_man,
SAFE_CAST(REPLACE (chutes_vis,".0","") AS INT64) chutes_vis,
SAFE_CAST(REPLACE (chutes_fora_man,".0","") AS INT64) chutes_fora_man,
SAFE_CAST(REPLACE (chutes_fora_vis,".0","") AS INT64) chutes_fora_vis
FROM basedosdados-staging.mundo_transfermarkt_competicoes_staging.brasileirao_serie_a AS t
86 changes: 85 additions & 1 deletion models/mundo_transfermarkt_competicoes/schema.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: 2
version: 2

models:
- name: brasileirao_serie_a
Expand Down Expand Up @@ -78,5 +78,89 @@ Fonte: https://www.transfermarkt.com/campeonato-brasileiro-serie-a/startseite/we
description: Chutes do time visitante
- name: chutes_fora_man
description: Chutes fora do time mandante
- name: chutes_fora_vis
description: Chutes fora do time visitante



- name: brasileirao_serie_a_atualizado
description: "Dados de 2003-03-29 até 2006-12-03 possuem somente as seguintes informações: data, horario, rodada, estadio, time_man, time_vis, gols_man, gols_vis. O motivo é que o site não disponibilizou outras informações.
A partir de 2007-05-03, informações mais completas foram disponibilizadas, contudo com algumas exceções.
- tecnico_man e tecnico_vis possuem alguns valores vazios devido a mudança de padrão. Geralmente técnicos possui id = 0. Contudo quando o técnico é um ex-jogador, ele possuí um id específico. Em consequência da inconsistência no padrão do id dos técnicos, linhas em que esse erro ocorre as colunas valor_equipe_titular_man, valor_equipe_titular_vis, idade_media_titular_man, idade_media_titular_vis, também são afetadas e resultando em vazio;
- Na data de 2016-12-11, rodada 38, a partida entre Chapecoense e Atlético-MG não ocorreu em decorrência do desastre que atingiu a equipe do Chapecoense na época, resultando assim em W.O. duplo;
Fonte: https://www.transfermarkt.com/campeonato-brasileiro-serie-a/startseite/wettbewerb/BRA1"
columns:
- name: ano_campeonato
description: Ano do campeonato
- name: data
description: Data da partida
- name: horario
description: Horário da partida
- name: rodada
description: Rodada
- name: estadio
description: Estádio
- name: arbitro
description: Árbitro
- name: publico
description: Público presente
- name: publico_max
description: Público máximo
- name: time_man
description: Time mandante
- name: time_vis
description: Time visitante
- name: tecnico_man
description: Técnico do time mandante
- name: tecnico_vis
description: Técnico do time visitante
- name: colocacao_man
description: Colocação do time mandante
- name: colocacao_vis
description: Colocação do time visitante
- name: valor_equipe_titular_man
description: Valor da equipe titular do time mandante
- name: valor_equipe_titular_vis
description: Valor da equipe titular do time visitante
- name: idade_media_titular_man
description: Idade média da equipe titular do time mandante
- name: idade_media_titular_vis
description: Idade média da equipe titular do time visitante
- name: gols_man
description: Gols do time mandante
- name: gols_vis
description: Gols do time visitante
- name: gols_1_tempo_man
description: Gols no primeiro tempo do time mandante
- name: gols_1_tempo_vis
description: Gols no primeiro tempo do time visitante
- name: escanteios_man
description: Escanteios do time mandante
- name: escanteios_vis
description: Escanteios do time visitante
- name: faltas_man
description: Faltas feitas pelo time mandante
- name: faltas_vis
description: Faltas feitas pelo time visitante
- name: chutes_bola_parada_man
description: Chutes de bola parada do time mandante
- name: chutes_bola_parada_vis
description: Chutes de bola parada do time visitante
- name: defesas_man
description: Defesas do time mandante
- name: defesas_vis
description: Defesas do time visitante
- name: impedimentos_man
description: Impedimentos do time mandante
- name: impedimentos_vis
description: Impedimentos do time visitante
- name: chutes_man
description: Chutes do time mandante
- name: chutes_vis
description: Chutes do time visitante
- name: chutes_fora_man
description: Chutes fora do time mandante
- name: chutes_fora_vis
description: Chutes fora do time visitante

0 comments on commit af9b9cb

Please sign in to comment.