Membandingkan nama dengan DIFFERENCE()
Pada latihan sebelumnya, Anda menggunakan SOUNDEX() untuk memeriksa nama para statistikawan dari tabel flight_statistics.
Kali ini, Anda akan melakukan hal serupa, tetapi menggunakan fungsi DIFFERENCE(). DIFFERENCE() mengembalikan nilai 4 saat ada kemiripan atau kecocokan identik antara dua string, dan 0 saat tidak ada atau sangat sedikit kemiripan.
Jika hasil DIFFERENCE() antara dua string adalah 4, tetapi teks yang Anda bandingkan berbeda, Anda akan menemukan data yang perlu dibersihkan.
Latihan ini merupakan bagian dari kursus
Membersihkan Data di Basis Data SQL Server
Instruksi latihan
- Pilih nilai unik dari kolom
statistician_namedanstatistician_surnamedariS1. - Lakukan inner join tabel
flight_statisticssebagaiS2pada nama depan dan nama belakang yang terdengar mirip, yaitu pada kasus ketika nilaiDIFFERENCEantara kolom masing-masing tabel adalah 4. - Saring nilai di mana kolom
statistician_namedanstatistician_surnameberbeda satu sama lain padaS1danS2masing-masing.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
SELECT
-- First name and surnames of the statisticians
DISTINCT S1.___, S1.___
-- Join flight_statistics with itself
FROM ___ S1 INNER JOIN ___ S2
-- The DIFFERENCE of the first name and surname has to be equals to 4
ON ___(S1.___, S2.___) = 4
AND ___(S1.___, S2.___) = 4
-- The texts of the first name or the texts of the surname have to be different
WHERE S1.___ <> S2.___
OR S1.___ <> S2.___