Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Sql Server que faire pour créer une clé de classement à partir d'une valeur de chaîne

cela peut fonctionner, mais il peut y avoir de fausses correspondances, sans aucun moyen de les empêcher, car vous n'avez qu'une solution d'algorithme. Votre meilleur pari est de créer une table d'alias. Incluez toutes les variations jamais trouvées pour chaque nom d'entreprise et un FK à l'ID de l'entreprise réelle. Incluez également une ligne pour le nom réel.

AliasID CompanyID CompanyAlias
------- --------- ------------
1       1         Company X, Inc   <<--actual real company name
2       1         Company X Inc
3       1         Company X

Si une correspondance de nom exacte n'est pas trouvée dans ce tableau lors de l'importation de données, vous pouvez utiliser votre algorithme proposé ou un autre, ou utiliser une entrée humaine, etc. pour trouver une correspondance ou générer une nouvelle entreprise. À ce stade, insérez dans la table d'alias. Si vous constatez que votre correspondance était erronée pour une raison quelconque, vous pouvez modifier la table d'alias pour effectuer le mappage approprié. Si vous n'utilisez qu'un algorithme, vous devrez inclure des exceptions et votre algorithme deviendra grand et lent. Avec ce tableau et un bon index, trouver vos correspondances devrait être rapide.