Nettoyage et fusion de données

Comment fusionner les doublons clients adjacents par e-mail ou external_id

2026-06-20
Objectif

Plusieurs lignes adjacentes peuvent appartenir au même client. Il faut les fusionner selon un email non vide ou, dans une configuration distincte, selon external_id, tout en conservant les noms et autres valeurs différents.

Réponse courte

Créez la colonne cible email à partir de email_raw, appliquez uniquement ToutSupprimer les espaces aux bords, puis activez la fusion des lignes similaires selon la colonne actuelle, avec une correspondance exacte et le séparateur ;. Si l’objectif est de réunir toutes les répétitions, triez d’abord les données selon cette clé ; sinon, seules les répétitions déjà adjacentes seront fusionnées.

Comment le configurer dans Eofferix

  1. Ajoutez ou ouvrez la colonne cible email, choisissez email_raw comme source et conservez une seule transformation : ToutSupprimer les espaces aux bords. Les noms de colonnes appartiennent uniquement à cet exemple ; aucune conversion universelle en minuscules n’est appliquée.

    Ouverture des paramètres de la colonne cible email dans l’éditeur de tableau Eofferix
    La colonne email lit email_raw et supprime uniquement les espaces extérieurs.
  2. Dans les Paramètres supplémentaires de la colonne, activez la modification de la structure des lignes et sélectionnez le mode de fusion des lignes similaires.

  3. Choisissez la colonne actuelle comme clé, laissez la valeur de comparaison vide, sélectionnez la correspondance exacte et saisissez ; comme séparateur. Ne comptez pas sur un espace après celui-ci : le paramètre est normalisé et le résultat réel est valeur1;valeur2.

    Paramètres de fusion des lignes adjacentes selon la colonne email actuelle
    Le mode de fusion utilise la correspondance exacte et le séparateur point-virgule sans espace.
  4. Si toutes les répétitions doivent être réunies, triez le tableau de façon stable afin que les clés identiques soient consécutives avant l’exécution ; si l’ordre d’entrée doit être conservé, seules les répétitions adjacentes seront fusionnées. Examinez ensuite le résultat. Pour une fusion selon external_id, configurez une exécution distincte avec cette colonne comme clé ; un seul mode ne signifie pas « email OU external_id ».

    Lignes clients adjacentes fusionnées avec plusieurs variantes d’e-mail et de nom
    Les clés adjacentes ont correspondu sans tenir compte de la casse et les valeurs distinctes ont été réunies par un point-virgule. Le contrôle non adjacent, volontairement non trié, et les clés vides sont restés séparés.
Important. email_raw, email, external_id et les adresses affichées ne sont qu’un exemple. La fusion effectue un seul passage sur des lignes adjacentes ayant la même clé non vide. La comparaison exacte des clés ignore la casse, mais l’unicité des valeurs produites la respecte : Anne@Example.test et anne@example.test forment un groupe, mais les deux graphies figurent dans le résultat.

Résultat attendu

Lignes sources adjacentesRésultatExplication
Anne@Example.test / Anne Martin + anne@example.test / Anne M.Anne@Example.test;anne@example.test / Anne Martin;Anne M.Après suppression des espaces, les clés correspondent sans tenir compte de la casse ; les e-mails de casse différente et les noms distincts sont conservés avec ;.
pierre@example.test / Pierre + pierre@example.test / Pierre M.pierre@example.test / Pierre;Pierre M.Un e-mail strictement identique n’est produit qu’une fois, tandis que les deux noms différents sont réunis.
anne@example.test, puis ivan@example.test, puis de nouveau anne@example.testtrois lignesCe contrôle est volontairement non trié : la dernière ligne d’Anne ne peut pas rejoindre un groupe déjà fermé. Après un tri par e-mail, elle deviendrait adjacente et serait fusionnée.
e-mail vide / Client A + e-mail vide / Client Bdeux lignesLes clés vides ne sont jamais considérées comme identiques.
C-1001 / Anne + C-1001 / Anne M., avec external_id comme cléC-1001 / Anne;Anne M.Une configuration distincte selon external_id fusionne de la même façon un groupe adjacent.
abc-1 + ABC-1, avec external_id comme cléun groupeLa comparaison exacte de la clé ignore la casse ; n’utilisez cette clé que si ce comportement convient à vos identifiants.
une clé avec des téléphones ou des noms différentstoutes les valeurs uniques réunies par ;Le service ne choisit pas de valeur gagnante et ne détermine pas laquelle des valeurs en conflit est correcte.

Contrôles avant l’export

  • La colonne clé contient uniquement ToutSupprimer les espaces aux bords ; les e-mails ne sont pas convertis automatiquement en minuscules.
  • Si toutes les répétitions doivent être fusionnées, les lignes sont triées de façon stable selon la clé choisie avant le traitement, car seules les correspondances adjacentes sont réunies.
  • Le mode utilise la colonne actuelle, la correspondance exacte, une valeur de comparaison vide et le séparateur ;.
  • Anne@Example.test et anne@example.test donnent une ligne dont l’e-mail est Anne@Example.test;anne@example.test.
  • Un contrôle volontairement non trié laisse une répétition non adjacente séparée ; après un tri selon la clé, cette répétition rejoindrait son groupe.
  • Deux lignes à clé vide restent deux lignes et les valeurs en conflit sont contrôlées avant l’export.

Limites de cet exemple

  • Il s’agit de fusionner des groupes adjacents, et non de dédupliquer globalement tout le fichier. Un tri stable selon la clé est indispensable lorsque toutes les répétitions doivent être réunies.
  • Une exécution n’utilise qu’une seule clé. Une règle e-mail OU external_id nécessite une clé commune préparée volontairement ou deux étapes contrôlées.
  • Une clé vide ne fusionne pas les lignes ; les enregistrements sans e-mail restent donc séparés.
  • La correspondance exacte signifie l’égalité de toute la valeur sans espaces extérieurs et sans tenir compte de la casse ; ce n’est pas une recherche de sous-chaîne. La norme SMTP impose de traiter la partie locale de la boîte comme sensible à la casse : n’utilisez cette clé e-mail que si votre politique de données assimile ces variantes ; voir la section 2.4 de la RFC 5321.
  • Les valeurs uniques non vides de chaque colonne sont réunies avec le séparateur réel ;, sans espace. En cas de conflit, Eofferix conserve les variantes, mais ne le résout pas.

Traitez vos données plus vite avec Eofferix

Créez un compte gratuit pour automatiser catalogues et listes de prix selon vos règles.

S’inscrire