Conversão de tipo com uma cláusula CASE
Um dos atributos de parking_violation incluídos em cada registro é a localização do veículo em relação ao endereço da infração. Um valor 'F' na coluna violation_in_front_of_or_opposite indica que o veículo estava em frente ao endereço registrado. Um valor 'O' indica que o veículo estava no lado oposto da rua. A coluna usa o tipo TEXT para representar os valores. As mesmas informações poderiam ser registradas usando um valor BOOLEAN (true/false), que usa menos memória.
Neste exercício, você vai converter violation_in_front_of_or_opposite em uma coluna BOOLEAN chamada is_violation_in_front usando uma cláusula CASE. Essa coluna é true para registros que ocorrem em frente ao endereço registrado e false para registros que ocorrem no lado oposto do endereço registrado.
Este exercicio faz parte do curso
Limpeza de dados em bancos de dados PostgreSQL
Instruções do exercicio
- Inclua uma condição de case que defina o valor de
is_violation_in_frontcomotruequando o valor deviolation_in_front_of_or_oppositefor igual a'F'para o registro. - Inclua outra condição de case que defina o valor de
is_violation_in_frontcomofalsequando o valor deviolation_in_front_of_or_oppositefor igual a'O'para o registro.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
SELECT
CASE WHEN
-- Use true when column value is 'F'
___ = ___ THEN ___
WHEN
-- Use false when column value is 'O'
___ = ___ THEN ___
ELSE
NULL
END AS ___
FROM
parking_violation;