Zacznij terazZacznij za darmo

Stosowanie funkcji do czyszczenia ciągów znaków

W tym kursie będziemy korzystać ze zbioru danych zawierającego 5000 rekordów o mandatach parkingowych w Nowym Jorku, przechowywanych w tabeli parking_violation.

Trwają prace nad przeprojektowaniem usługi, która umożliwia doręczenie fizycznej kopii mandatu osobom ukaranym. Aby wydruk informacji na formularzu był poprawnie sformatowany, niektóre pola muszą zostać zmienione względem ich reprezentacji w bazie danych. Zmiany są następujące:

  • Aby tekst na formularzu był odpowiednio wyrównany, wartości w kolumnie violation_location muszą mieć dokładnie 4 znaki.
  • Wszystkie wartości P-U (pickup) w kolumnie vehicle_body_type powinny zostać zastąpione ogólną wartością TRK.
  • W kolumnie street_name tylko pierwsza litera każdego słowa powinna być wielką literą.

Do wprowadzenia tych zmian wykorzystamy funkcje LPAD(), REPLACE() oraz INITCAP().

To ćwiczenie jest częścią kursu

Czyszczenie danych w bazach PostgreSQL

Zobacz kurs

Instrukcje do ćwiczenia

  • Użyj funkcji LPAD(), aby dopisać '0' na początku wartości w kolumnie violation_location, jeśli mają mniej niż 4 cyfry.
  • Użyj funkcji REPLACE(), aby zastąpić 'P-U' wartością 'TRK' w kolumnie vehicle_body_type.
  • Użyj funkcji INITCAP(), aby w kolumnie street_name tylko pierwsza litera każdego słowa była wielką literą.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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;
Edytuj i uruchom kod