将中的两个数据表合并为一个数据表,并按单列删除重复数据



我有两个数据表,比如T1和T2。以下是两个表中的列:

1) Filename,
2) Size,
3) PATH,
4) rank,
5) DocTitle,
6) HitCount

现在,我需要合并表T1和T2,但条目不应该按照"Filename"列重复。

我无法使用T1.Merge(T2)来完成我的工作。有人对此有建议吗。谢谢

如果你需要在C#中实现这一点,那么类似的smth可以为你的工作

var fileNames = t1.Rows.OfType<DataRow>().Select(row => row["FileName"]).ToList();
var rowsToAdd = t2.Rows.OfType<DataRow>().Where(row => !fileNames.Contains(row["FileName"])).ToList();
foreach (var dataRow in rowsToAdd)
{
    t1.ImportRow(dataRow);
}

但最好使用SQL过滤器,然后放入DataTable。

select * into table_name from (select * from T1  union select * from t2 )

注意

只有当两个表的列数相同时,它才会工作。

最新更新