CommencerCommencer gratuitement

Standardiser les noms de couleurs

Dans l’exercice précédent, la fonction DIFFERENCE() a été utilisée pour identifier les couleurs proches de notre représentation souhaitée de la couleur GRAY. Cependant, cette approche a conservé un certain nombre d’enregistrements où la valeur vehicle_color peut correspondre ou non au gris. En particulier, la chaîne GR (vert) possède le même code Soundex que la chaîne GRAY. Heureusement, les enregistrements ayant ces valeurs de vehicle_color peuvent être exclus de l’ensemble des enregistrements à modifier.

Dans cet exercice, vous allez attribuer une valeur de vehicle_color grise cohérente en identifiant des chaînes similaires qui représentent la même couleur. Là encore, le module fuzzystrmatch a déjà été installé pour vous.

Cet exercice fait partie du cours

Nettoyer des données dans des bases PostgreSQL

Afficher le cours

Instructions

  • Complétez la clause SET pour affecter 'GRAY' à vehicle_color pour les enregistrements dont la valeur vehicle_color a un code Soundex correspondant au code Soundex de 'GRAY'.
  • Mettez à jour la clause WHERE de la sous‑requête afin que les valeurs summons_number renvoyées excluent les valeurs summons_number des enregistrements dont la valeur vehicle_color est 'GR'.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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
        ___ != ___
);
Modifier et exécuter le code