ÎncepețiÎncepe gratuit

Standardizarea numelor de culori

În exercițiul anterior, funcția DIFFERENCE() a fost folosită pentru a identifica culorile care se potriveau îndeaproape cu reprezentarea dorită a culorii GRAY. Totuși, această abordare a reținut o serie de înregistrări în care valoarea vehicle_color putea sau nu să fie gri. Mai concret, șirul GR (verde) are același cod Soundex ca șirul GRAY. Din fericire, înregistrările cu aceste valori vehicle_color pot fi excluse din setul de înregistrări care trebuie modificate.

În acest exercițiu, vei atribui o valoare vehicle_color gri consistentă, identificând șiruri similare care reprezintă aceeași culoare. Modulul fuzzystrmatch a fost deja instalat pentru tine.

Acest exercițiu face parte din cursul

Curățarea datelor în baze de date PostgreSQL

Vezi cursul

Instrucțiuni pentru exercițiu

  • Completează clauza SET pentru a atribui 'GRAY' ca valoare vehicle_color înregistrărilor al căror cod Soundex corespunzător valorii vehicle_color se potrivește cu codul Soundex al lui 'GRAY'.
  • Actualizează clauza WHERE din subinterogare astfel încât valorile summons_number returnate să excludă valorile summons_number din înregistrările care au 'GR' ca valoare vehicle_color.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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
        ___ != ___
);
Editează și rulează codul