查找 2 个数据表之间的重复项并将其删除

问题描述 投票:0回答:1

我有来自 2 个不同 SQL 数据库的数据 我用数据创建了 2 个数据表 两个数据表中的列不相同 但我需要在两者的第一列中找到重复项,并将它们从第一个数据表中删除

这是数据表的创建

` DataTable dt2 = new DataTable();

                using (SqlDataAdapter adapter1 = new SqlDataAdapter(comm1))
                {
                    adapter1.Fill(dt2);

                    DataTable[] dt3 = dt2.AsEnumerable()
                    .Select((row, index) => new { row, index })
                    .GroupBy(x => x.index / 9999)  // integer division, the fractional part is truncated
                    .Select(g => g.Select(x => x.row).CopyToDataTable())
                    .ToArray();`

` DataTable dt = new DataTable();

                    using (SqlDataAdapter adapter = new SqlDataAdapter(comm))
                    {
                            adapter.Fill(dt);


                            string antal = dt.Rows.Count.ToString();
                        File.AppendAllLines("E:\\Logs\\WashingMachine\\" + date + ".txt", new[] { "Rows in DB at " + ort + " =  " + antal + "  " });

                            DataTable[] dt1 = dt.AsEnumerable()
                            .Select((row, index) => new { row, index })
                            .GroupBy(x => x.index / 9999)  // integer division, the fractional part is truncated
                            .Select(g => g.Select(x => x.row).CopyToDataTable())
                            .ToArray();`

我尝试过这个命令:

 DataTable d5 = CompareTwoDataTable(dt, dt2);

var dtData3 = dt.AsEnumerable().Except(dt2.AsEnumerable(), DataRowComparer.Default);

要获取重复项,但无法使其工作

请帮助我

c# asp.net datatables
1个回答
0
投票

要查找重复项,您必须使用 Intersect。

您可以选择每个数据表所需列的所有值,然后应用相交。

© www.soinside.com 2019 - 2024. All rights reserved.