Kom igångKom igång gratis

Jämföra namn med DIFFERENCE()

I föregående övning använde du SOUNDEX() för att kontrollera namnen på statistikerna i tabellen flight_statistics.

Den här gången vill du göra något liknande, men med funktionen DIFFERENCE(). DIFFERENCE() returnerar 4 när två strängar låter likadant eller är identiska, och 0 när likheterna är små eller obefintliga.

Om DIFFERENCE() returnerar 4 för två strängar men texterna du jämför är olika, har du hittat data som behöver rensas.

Den här övningen är en del av kursen

Rensa data i SQL Server-databaser

Visa kurs

Övningsinstruktioner

  • Välj de distinkta värdena i kolumnerna statistician_name och statistician_surname från S1.
  • Gör en inner join med tabellen flight_statistics som S2 på likaljudande förnamn och efternamn, för de rader där DIFFERENCE mellan respektive tabells kolumn är 4.
  • Filtrera bort värden där kolumnerna statistician_name och statistician_surname skiljer sig från varandra i S1 respektive S2.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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.___
Redigera och kör kod