套用函式清理字串
在整門課中,我們會使用一個包含 5,000 筆紐約市違規停車紀錄的資料集,儲存在 parking_violation 資料表中。
目前正重新設計一項服務,會將違規通知寄送紙本給收件人。為了讓報表上的資訊輸出格式正確,部分欄位需要從資料庫中的原始表示法調整如下:
- 為了讓表單上的文字對齊,
violation_location的值必須是 4 個字元長。 vehicle_body_type欄中的所有P-U(皮卡車)值,應統一改為一般的TRK值。street_name欄中每個單字僅首字母需為大寫。
你將使用 LPAD()、REPLACE() 與 INITCAP() 這些函式完成上述變更。
本練習屬於課程
清理 PostgreSQL 資料庫中的資料
練習說明
- 使用
LPAD(),在長度小於 4 位數的violation_location前面補上'0'。 - 使用
REPLACE(),將vehicle_body_type欄位中的'P-U'取代為'TRK'。 - 使用
INITCAP(),確保street_name欄位中每個單字只有首字母大寫。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
SELECT
-- Add 0s to ensure violation_location is 4 characters in length
___(___, ___, ___) AS violation_location,
-- Replace 'P-U' with 'TRK' in vehicle_body_type column
___(___, ___, ___) AS vehicle_body_type,
-- Ensure only first letter capitalized in street_name
___(___) AS ___
FROM
parking_violation;