標準化顏色名稱
在前一個練習中,你使用 DIFFERENCE() 函式來找出與目標顏色 GRAY 最接近的顏色。不過,這種作法會保留一些 vehicle_color 可能是也可能不是灰色的紀錄。特別是字串 GR(green)與字串 GRAY 的 Soundex 編碼相同。所幸,vehicle_color 為這些值的紀錄可以從應該被更改的紀錄集合中排除。
在這個練習中,你將指派一致的灰色 vehicle_color 值,方法是找出代表相同顏色的相近字串。同樣地,fuzzystrmatch 模組已為你安裝好。
本練習屬於課程
清理 PostgreSQL 資料庫中的資料
練習說明
- 完成
SET子句,將vehicle_color指定為'GRAY',條件是該紀錄的vehicle_color的 Soundex 編碼與'GRAY'的 Soundex 編碼相同。 - 更新子查詢的
WHERE子句,讓回傳的summons_number值「排除」vehicle_color為'GR'的紀錄之summons_number。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
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
___ != ___
);