C# 如何比较具有不同列的datatable
我有EMP数据表,它包含500条如下记录:C# 如何比较具有不同列的datatable,c#,system.data.datatable,C#,System.data.datatable,我有EMP数据表,它包含500条如下记录: UserAceNumber UserID emp001 emp002 emp003 emp004 UserAceNumber UserID emp002 user002 emp004 user004 UserAceNumber UserID emp0
UserAceNumber UserID
emp001
emp002
emp003
emp004
UserAceNumber UserID
emp002 user002
emp004 user004
UserAceNumber UserID
emp001
emp002 user002
emp003
emp004 user004
所有500条记录的userid都将为空
另一个Empdetails数据表包含一些记录,我将在该表中保留UserID,如下所示:
UserAceNumber UserID
emp001
emp002
emp003
emp004
UserAceNumber UserID
emp002 user002
emp004 user004
UserAceNumber UserID
emp001
emp002 user002
emp003
emp004 user004
我需要EMP表中的结果如下:
UserAceNumber UserID
emp001
emp002
emp003
emp004
UserAceNumber UserID
emp002 user002
emp004 user004
UserAceNumber UserID
emp001
emp002 user002
emp003
emp004 user004
在这两个表中,公共值都是UserAceNumber
我不能使用任何SQL查询,因为这些数据表来自webservices,也来自LINQ,因为我使用的是2005
如何做到这一点?我已经完成了合并,但我需要列,就像在EMP datatable中一样。您可以使用datatable。选择query以实现此目的,输出将是datarow
var dataRow=dataTable.Select(string.Format("{0}='{1}'", primaryKeyColumnName, valueOfPrimaryKey));
有关API的更多信息,请参见
基本上,您要做的是在其中一个数据表上循环标识此数据表中的主键列使用该列在第二个数据表中查找相应的行。您可以使用该数据表。选择查询以实现此目的,输出将是一个数据行
var dataRow=dataTable.Select(string.Format("{0}='{1}'", primaryKeyColumnName, valueOfPrimaryKey));
有关API的更多信息,请参见
基本上,您要做的是在其中一个数据表上循环标识此数据表中的主键列使用它在第二个数据表中查找相应的行这里我不能使用任何sql查询,因为这些数据表来自数据库-没有意义,大概你想写的不是来自数据库?我认为你最好的选择是更改数据库模式或创建一个合并这两者的视图,然后使用C从该视图或更新的模式中检索值。。。有很多方法可以实现这一点,在这里我不能使用任何sql查询,因为这些数据表来自数据库-没有意义,大概你想写的不是来自数据库?我认为你最好的选择是更改数据库模式或创建一个合并这两者的视图,然后使用C从该视图或更新的模式中检索值。。。有很多方法可以实现这个NICE方法,我会自己使用它:primaryKeyColumnName,valueOfPrimaryKey我应该给出什么?在这个如何与另一个DataTable进行比较中,无论每个DataTable中的不同键是什么,都可以让你从DataTable中选择必要的行NICE方法,我会自己使用它:primaryKeyColumnName,valueOfPrimaryKey我应该给出什么?在这篇文章中,如何与另一个datatable进行比较,无论每个datatable中的不同键是什么,都可以让您从datatable中选择必要的行