比较数据表和合并更改

vin*_*ymk 5 c# datatable

我有两个具有相同结构的数据表(A,B).我需要将A的每一行与B的每一行进行比较,结果数据表C应该在A中有一行,在它下面的B中该行的变化.对于相同的行(A和B中的值相同),生成的数据表不应具有这些行.

因此,生成的数据表应该包含A中的每一行和它下面的B中不相同的行.结果表不应具有相同的行.

任何人都可以帮我用C#代码.

jsp*_*cal 1

最简单的方法是跨数据库联合:

create table merged
(select * from db1.t) union (select * from db2.t)
Run Code Online (Sandbox Code Playgroud)

仅返回唯一的行。要比较记录,请选择共享相同键的行(合并中的键列将不唯一)。

select * from merged order by key
Run Code Online (Sandbox Code Playgroud)

按照您想要的顺序对结果进行排序。

select * from merged where key in
(select key from merged group by key having count(*) > 1)
order by key
Run Code Online (Sandbox Code Playgroud)

将仅返回不匹配的行。