2014-06-23 69 views
0

我被提供了两套csv文件,理论上应该是相同的,但由于某种原因,其中一套包含比另一套更多的数据(csv文件是来自crm系统的自动每周数据备份)。如何将多个csv文件与数百万条记录进行比较?

理想情况下,我只需打开csv文件并执行vlookup并找到缺失的行(或“额外”行),并开始调查它们来自哪里以及为何存在差异。

但是,这些文件很大,并且包含数百万行。任何想法你怎么能比较文件,并找出它们是如何不同?你可以推荐哪些应用程序(希望免费且易于使用)?我无法打开这些文件,因为我遇到了Excel的行限制。

任何帮助表示赞赏。谢谢!

+0

kdiff3 http://kdiff3.sourceforge.net/ – ravenspoint

回答

1

我能够通过使用UltraEdit和UltraCompare来解决这个问题。 UltraCompare比较文件的能力是惊人的。非常容易使用。

0

您可以使用精简版vi等编辑器,纳米等

其极端的选项经常打开大文件,但我喜欢的awk这些东西的话,你可以使用awk来比较两个或多个文件。

Example: 

     awk ' 
      FNR==NR { 
        # file one use a key that need to match with file 2 
        from_file_one[$1] = $1 
        next 
      } 
      { 
        # file two check if file's two key has not matched with 
        # some of the keys in file one 
        if(!($1 in hour)) { 
          print $1 "didn't match" 
        } 
      } file1 file2 
+0

非常感谢你,我会研究这一点。 – pgonzaleznetwork

0

您可以将它们导入SQL服务器(或类似程序)并使用SQL(或类似语言)进行比较。

这可能不是最有说服力的选择,但有时最直接的路径是通过泥土。

+0

非常感谢。 – pgonzaleznetwork