Začněte nyníZačněte zdarma

Převod datového typu pomocí klauzule CASE

Jedním z atributů záznamu parking_violation je poloha vozidla vzhledem k adrese, na níž bylo zaznamenáno přestupku. Hodnota 'F' ve sloupci violation_in_front_of_or_opposite označuje, že vozidlo stálo přímo před danou adresou. Hodnota 'O' znamená, že vozidlo bylo na protější straně ulice. Sloupec k reprezentaci hodnot používá typ TEXT. Stejnou informaci lze vyjádřit pomocí hodnoty BOOLEAN (true/false), která zabírá méně paměti.

V tomto cvičení převedeš sloupec violation_in_front_of_or_opposite na sloupec typu BOOLEAN s názvem is_violation_in_front pomocí klauzule CASE. Tento sloupec bude mít hodnotu true u záznamů, kde vozidlo stálo před danou adresou, a hodnotu false u záznamů, kde bylo na protější straně ulice.

Toto cvičení je součástí kurzu

Cleaning Data in PostgreSQL Databases

Zobrazit kurz

Pokyny k cvičení

  • Přidej jednu podmínku, která nastaví hodnotu is_violation_in_front na true, pokud se hodnota violation_in_front_of_or_opposite v daném záznamu rovná 'F'.
  • Přidej další podmínku, která nastaví hodnotu is_violation_in_front na false, pokud se hodnota violation_in_front_of_or_opposite v daném záznamu rovná 'O'.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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;
Upravit a spustit kód