Standarisasi nama warna
Pada latihan sebelumnya, fungsi DIFFERENCE() digunakan untuk mengidentifikasi warna yang sangat mendekati representasi warna GRAY yang kita inginkan. Namun, pendekatan ini mempertahankan sejumlah rekaman di mana nilai vehicle_color mungkin berwarna abu-abu atau tidak. Secara khusus, string GR (green) memiliki kode Soundex yang sama dengan string GRAY. Untungnya, rekaman dengan nilai vehicle_color tersebut dapat dikecualikan dari himpunan rekaman yang harus diubah.
Pada latihan ini, Anda akan menetapkan nilai vehicle_color abu-abu yang konsisten dengan mengidentifikasi string serupa yang mewakili warna yang sama. Sekali lagi, modul fuzzystrmatch sudah dipasang untuk Anda.
Latihan ini merupakan bagian dari kursus
Membersihkan Data di Database PostgreSQL
Instruksi latihan
- Lengkapi klausa
SETuntuk menetapkan'GRAY'sebagaivehicle_coloruntuk rekaman dengan nilaivehicle_coloryang memiliki kode Soundex yang cocok dengan kode Soundex untuk'GRAY'. - Perbarui klausa
WHEREdari subkueri sehingga nilaisummons_numberyang dikembalikan mengecualikan nilaisummons_numberdari rekaman dengan nilaivehicle_color'GR'.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
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
___ != ___
);