Začněte nyníZačněte zdarma

Porovnávání jmen pomocí SOUNDEX()

Chybně zapsané řetězce jako 'Ilynois' místo 'Illinois' mohou při analýze dat způsobit problémy. Proto je důležité je odhalit.

Při analýze tabulky flight_statistics zjistíš, že některá jména a příjmení ve sloupcích statistician_name a statistician_surname jsou zapsána různými způsoby – například Miriam Smith a Myriam Smyth. Obáváš se, že podobných rozdílů je víc, a chceš všechna tato jména zkontrolovat.

Napadne tě porovnat jména statistiků pomocí funkce SOUNDEX(). Pokud funkce SOUNDEX() vrátí stejný výsledek, ale porovnávané texty se liší, najdeš data, která je potřeba vyčistit.

Toto cvičení je součástí kurzu

Cleaning Data in SQL Server Databases

Zobrazit kurz

Pokyny k cvičení

  • Vyber unikátní hodnoty sloupců statistician_name a statistician_surname z tabulky S1.
  • Proveď inner join tabulky flight_statistics jako S2 na základě podobně znějících křestních jmen a příjmení pomocí funkce SOUNDEX().
  • Odfiltruj záznamy, kde se hodnoty sloupců statistician_name a statistician_surname v tabulkách S1 a S2 navzájem liší.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

SELECT 
    -- First name and surname of the statisticians
	DISTINCT S1.___, S1.___
-- Join flight_statistics with itself
FROM ___ S1 INNER JOIN ___ S2 
	-- The SOUNDEX result of the first name and surname have to be the same
	ON ___(S1.___) = ___(S2.___) 
	AND ___(S1.___) = ___(S2.___) 
-- The texts of the first name or the texts of the surname have to be different
WHERE S1.___ <> S2.___
	OR S1.___ <> S2.___
Upravit a spustit kód