Kom igångKom igång gratis

Typkonvertering med en CASE-sats

Ett av attributen i parking_violation är fordonets position i förhållande till gatuadressen där överträdelsen registrerades. Värdet 'F' i kolumnen violation_in_front_of_or_opposite anger att fordonet stod framför den registrerade adressen, medan värdet 'O' anger att fordonet stod på motsatt sida av gatan. Kolumnen använder typen TEXT för att representera dessa värden. Samma information kan lagras mer minneseffektivt med ett BOOLEAN-värde (true/false).

I den här övningen ska du konvertera violation_in_front_of_or_opposite till en BOOLEAN-kolumn med namnet is_violation_in_front med hjälp av en CASE-sats. Kolumnen ska ha värdet true för poster där överträdelsen skedde framför den registrerade adressen, och false för poster där den skedde på motsatt sida.

Den här övningen är en del av kursen

Datarensning i PostgreSQL-databaser

Visa kurs

Övningsinstruktioner

  • Lägg till ett case-villkor som sätter värdet för is_violation_in_front till true när violation_in_front_of_or_opposite är lika med 'F' för posten.
  • Lägg till ytterligare ett case-villkor som sätter värdet för is_violation_in_front till false när violation_in_front_of_or_opposite är lika med 'O' för posten.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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;
Redigera och kör kod