ÎncepețiÎncepe gratuit

Compararea numelor cu DIFFERENCE()

În exercițiul anterior, ai folosit SOUNDEX() pentru a verifica numele statisticienilor din tabela flight_statistics.

De această dată, vrei să faci ceva similar, dar folosind funcția DIFFERENCE(). DIFFERENCE() returnează 4 atunci când există o potrivire similară sau identică între două șiruri de caractere și 0 atunci când există puțină sau nicio similitudine.

Dacă rezultatul DIFFERENCE() dintre două șiruri este 4, dar textele comparate sunt diferite, vei identifica datele care trebuie curățate.

Acest exercițiu face parte din cursul

Curățarea datelor în bazele de date SQL Server

Vezi cursul

Instrucțiuni pentru exercițiu

  • Selectează valorile distincte ale coloanelor statistician_name și statistician_surname din S1.
  • Realizează un inner join al tabelei flight_statistics ca S2 pe baza numelor și prenumelor care sună similar, pentru înregistrările unde valoarea DIFFERENCE dintre coloanele celor două tabele este 4.
  • Filtrează valorile unde coloanele statistician_name și statistician_surname din S1 și, respectiv, S2 sunt diferite între ele.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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.___
Editează și rulează codul