两列上的内连接,它们的值不是100%相等

时间:2013-01-15 14:59:48

标签: excel ssis inner-join

我有两个excel文件,一个有两列(ID1,Name),另一个有两列(ID2,Name),我需要导出一个有三列的文件(ID1,ID2,Name)。

问题是每个文件中都有名称不在另一个文件中,而更大的问题是在两个文件中写同一个名称存在一些差异,这两个文件是语言中的常见差异。文件,比如阿拉伯语中的字符'أ',可以在没有Hamza'mat'的情况下编写(我的意思是我不能使用两个字符串之间的标准相等操作来指定一个文件中的名称与另一个文件中的名称相同文件)。

我的问题是有没有任何工具可以提供帮助而无需为其编写代码,我听说过SQL Integration Services但我对此一无所知,请你指点任何可能的参考资料帮助解决我的问题。

非常感谢任何链接,建议或其他帮助。

非常感谢提前

1 个答案:

答案 0 :(得分:2)

你有一个有趣的问题但不幸的是在这种情况下有趣=很难。使用英文类型名称,我们可以使用许多名称匹配算法(双元数据,最小编辑距离,Damerau-Levenshtein距离等),但我不知道这些将如何与阿拉伯语等丰富的语言一起使用。我在SU上回答了一个类似的问题 https://superuser.com/questions/480133/record-matching-software-to-compare-two-tables-and-match-on-based/481592

尝试SSIS的模糊功能不会有害:Fuzzy LookupFuzzy Grouping。在您的情况下,模糊分组是您想要尝试的。这些是Enterprise Edition功能,因此从许可角度了解这一点。它们可以在您的开发版中正常运行,但如果您部署并尝试在标准版的SQL Server上运行,它将会失败。