Classificando infrações de estacionamento por horário do dia
Surgiram preocupações de que as infrações de estacionamento não estão sendo emitidas de forma uniforme ao longo do dia. Você recebeu a tarefa de associar as infrações de estacionamento ao horário de emissão. Você determinou que a forma mais simples de concluir essa tarefa é criar uma nova coluna chamada morning. Esse campo será preenchido com o (inteiro) 1 se a infração foi emitida pela manhã (entre 12:00 AM e 11:59 AM) e com o (inteiro) 0 caso contrário. O horário de emissão está registrado na coluna violation_time da tabela parking_violation. Essa coluna consiste em 4 dígitos seguidos de um A (de AM) ou P (de PM).
Neste exercício, você vai preencher a coluna morning correspondendo padrões para violation_time que ocorram pela manhã.
Este exercicio faz parte do curso
Limpeza de dados em bancos de dados PostgreSQL
Instruções do exercicio
- Use o padrão de expressão regular
'\d\d\d\dA'na subconsulta para corresponder valores deviolation_timeconsistindo de 4 dígitos consecutivos (\d) seguidos de umAmaiúsculo. - Edite a cláusula
CASEpara preencher a colunamorningcom1(inteiro sem aspas) quando a expressão regular for correspondida. - Edite a cláusula
CASEpara preencher a colunamorningcom0(inteiro sem aspas) quando a expressão regular não for correspondida.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
SELECT
summons_number,
CASE WHEN
summons_number IN (
SELECT
summons_number
FROM
parking_violation
WHERE
-- Match violation_time for morning values
___ SIMILAR TO ___
)
-- Value when pattern matched
THEN ___
-- Value when pattern not matched
ELSE ___
END AS morning
FROM
parking_violation;