CommencezCommencez gratuitement

Comparer des noms avec DIFFERENCE()

Dans l'exercice précédent, vous avez utilisé SOUNDEX() pour vérifier les noms des statisticiens dans la table flight_statistics.

Cette fois, vous voulez faire quelque chose de semblable, mais avec la fonction DIFFERENCE(). DIFFERENCE() renvoie 4 lorsqu'il y a une correspondance identique ou très similaire entre deux chaînes, et 0 lorsqu'il y a peu ou pas de similarité.

Si le résultat de DIFFERENCE() entre deux chaînes est 4, mais que les textes que vous comparez sont différents, vous trouverez les données à nettoyer.

Cette activité fait partie du cours

Nettoyer des données dans des bases de données SQL Server

Voir le cours

Instructions de l’exercice

  • Sélectionnez les valeurs distinctes des colonnes statistician_name et statistician_surname à partir de S1.
  • Faites une jointure interne de la table flight_statistics sous l'alias S2 sur les prénoms et noms qui sonnent de façon similaire, dans les cas où la DIFFERENCE entre la colonne de chaque table est égale à 4.
  • Excluez les valeurs où les colonnes statistician_name et statistician_surname sont différentes entre S1 et S2, respectivement.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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.___
Modifier et exécuter le code