使用vb.net比较两个不同数据表中的两个数据集

时间:2012-09-27 14:13:54

标签: vb.net vb.net-2010

请告诉我如何比较两个不同数据集中的两个数据表。我有一个数据表在一个数据集中有5列,另一个数据表在另一个数据集中有2列。两个数据表中的第1列应相同。我必须比较不同数据集中两个数据表中的第一列。如果两个行都相同,它应该在数据表2的第三列中保留一个标记为yes或no的标志。并且它还应该合并其他列,例如2,3,4和5,从dataset1中的数据表1到数据表2 in dataset2。

我正在从excel工作簿中导入具有多个工作表的值的数据表。所以一个工作表到一个数据表。同样有两本工作簿。

第一个数据集中的第一个数据表就像

A B C D E

1 2 3 4 5

2 3 4 5 6

3 4 5 6 7

第二个数据集中的第二个数据表将类似于

A F

1 2

2 3

3 4

第二个数据集中的输出数据表2应该类似于

A B C D E F G

1 2 3 4 5 2是

2 3 4 5 6 3是

3 4 5 6 7 4是

请建议我如何继续,我正在努力学习vb.net

先谢谢

Jithin

1 个答案:

答案 0 :(得分:1)

你可以

    两个DataTables上的
  • define a primary key
  • 使用所有列
  • 创建新的DataTable
  • 遍历DataTable 1中的所有行,并使用pk查找DataTable 2中的“匹配”行
  • 在每个结果的新DataTable中插入一行

然后,如果您还需要新DataTable中的那些行,那么您需要一些额外的逻辑来查找仅存在于DataTable 1或2中的所有行。

您是否考虑改变填充两个数据表的方式?如果这是2个查询的结果,也许您可​​以在SQL中使用join语句?