Bắt đầu ngayBắt đầu miễn phí

Chuẩn hóa tên màu

Trong bài tập trước, hàm DIFFERENCE() được dùng để xác định các màu gần khớp với cách biểu diễn mong muốn của màu GRAY. Tuy nhiên, cách làm này giữ lại một số bản ghi mà giá trị vehicle_color có thể là xám hoặc không. Cụ thể, chuỗi GR (green) có cùng mã Soundex với chuỗi GRAY. May mắn là các bản ghi có các giá trị vehicle_color này có thể bị loại khỏi tập bản ghi cần thay đổi.

Trong bài tập này, bạn sẽ gán một giá trị vehicle_color màu xám nhất quán bằng cách nhận diện các chuỗi tương tự đại diện cho cùng một màu. Một lần nữa, mô-đun fuzzystrmatch đã được cài đặt sẵn cho bạn.

Bài tập này là một phần của khóa học

Làm sạch dữ liệu trong cơ sở dữ liệu PostgreSQL

Xem khóa học

Hướng dẫn bài tập

  • Hoàn thiện mệnh đề SET để gán 'GRAY' làm vehicle_color cho các bản ghi có giá trị vehicle_color có mã Soundex trùng với mã Soundex của 'GRAY'.
  • Cập nhật mệnh đề WHERE của truy vấn con để các giá trị summons_number được trả về sẽ loại trừ các summons_number từ các bản ghi có giá trị vehicle_color'GR'.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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
        ___ != ___
);
Chỉnh sửa và Chạy Mã