Zacznij terazZacznij za darmo

Ujednolicanie nazw kolorów

W poprzednim ćwiczeniu funkcja DIFFERENCE() posłużyła do zidentyfikowania kolorów zbliżonych do pożądanej reprezentacji koloru GRAY. Takie podejście zachowało jednak pewną liczbę rekordów, w których wartość vehicle_color mogła, ale nie musiała oznaczać szarego koloru. Konkretnie – ciąg GR (zielony) ma taki sam kod Soundex jak ciąg GRAY. Na szczęście rekordy z tymi wartościami vehicle_color można wykluczyć ze zbioru rekordów przeznaczonych do zmiany.

W tym ćwiczeniu przypiszesz spójną wartość vehicle_color dla szarego koloru, identyfikując podobne ciągi reprezentujące ten sam kolor. Moduł fuzzystrmatch jest już zainstalowany.

To ćwiczenie jest częścią kursu

Czyszczenie danych w bazach PostgreSQL

Zobacz kurs

Instrukcje do ćwiczenia

  • Uzupełnij klauzulę SET, aby przypisać wartość 'GRAY' jako vehicle_color dla rekordów, których wartość vehicle_color ma kod Soundex zgodny z kodem Soundex ciągu 'GRAY'.
  • Zaktualizuj klauzulę WHERE podzapytania tak, aby zwracane wartości summons_number wykluczały wartości summons_number z rekordów, w których vehicle_color wynosi 'GR'.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

UPDATE 
	parking_violation
SET 
	-- Update vehicle_color to `GRAY`
	___ = ___
WHERE 
	summons_number IN (
      SELECT
        summons_number
      FROM
        parking_violation
      WHERE
        DIFFERENCE(vehicle_color, 'GRAY') = 4 AND
        -- Filter out records that have GR as vehicle_color
        ___ != ___
);
Edytuj i uruchom kod