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

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

V předchozím cvičení jsi použil/a SOUNDEX() ke kontrole jmen statistiků z tabulky flight_statistics.

Tentokrát chceš udělat něco podobného, ale s využitím funkce DIFFERENCE(). Funkce DIFFERENCE() vrátí hodnotu 4, pokud jsou dva řetězce podobné nebo totožné, a hodnotu 0, pokud si jsou velmi málo podobné nebo nepodobné vůbec.

Pokud DIFFERENCE() vrátí pro dva řetězce hodnotu 4, ale porovnávané texty jsou různé, najdeš tím 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 jedinečné hodnoty sloupců statistician_name a statistician_surname z S1.
  • Proveď inner join tabulky flight_statistics jako S2 na základě podobně znějících křestních jmen a příjmení — konkrétně u záznamů, kde je hodnota DIFFERENCE mezi příslušnými sloupci obou tabulek rovna 4.
  • Vyfiltruj záznamy, kde se sloupce statistician_name a statistician_surname v 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 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.___
Upravit a spustit kód