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
Instructions de l’exercice
- Sélectionnez les valeurs distinctes des colonnes
statistician_nameetstatistician_surnameà partir deS1. - Faites une jointure interne de la table
flight_statisticssous l'aliasS2sur les prénoms et noms qui sonnent de façon similaire, dans les cas où laDIFFERENCEentre la colonne de chaque table est égale à 4. - Excluez les valeurs où les colonnes
statistician_nameetstatistician_surnamesont différentes entreS1etS2, 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.___