如何使用 C# 删除数据表中的重复条目? [复制]
Posted
技术标签:
【中文标题】如何使用 C# 删除数据表中的重复条目? [复制]【英文标题】:How do you get rid off duplicate entries in a data table using C#? [duplicate] 【发布时间】:2012-11-08 19:02:16 【问题描述】:可能重复:How to select distinct values from datatable?
这是我目前正在处理的代码。我试图摆脱我的数据集中的重复字段。我相信这样做的正确方法是使用 If 语句。有人可以帮忙吗?这是我到目前为止的代码:
【问题讨论】:
可以在数据库字段中分配 UNIQUE。 【参考方案1】:有一个名为 ToTable 的 DataView 方法,它有两个参数:(和一个三参数重载版本)
一个布尔参数不同 如果为 true,则返回的 System.Data.DataTable 包含对其所有列具有不同值的行。默认值为 false。
一个字符串数组参数columnNames 一个字符串数组,其中包含要包含在返回的 System.Data.DataTable 中的列名列表。 System.Data.DataTable 包含指定列,按照它们在此数组中出现的顺序排列。
// create a dv from the source dt
DataView dv = new DataView(dt);
// set the output columns array of the destination dt
string[] strColumns = "NodeID", "Title", "Url";
// true = yes, i need distinct values.
dt = dv.ToTable(true, strColumns);
参考: Remove Duplicate Records in a DataTable the Easy Way
【讨论】:
【参考方案2】:每次我需要唯一性时,我都会使用 HashSet 而不是其他结构。所以简短的回答是:我没有。
Hashset 有一个很好的功能,可以让您决定它认为什么是独特的 - 只需使用适当的构造函数。
另一件事是 - 如果您不使用 DataSets 来访问数据库 - 不要使用它,如果您这样做了,那么请改用强类型版本。如果您有充分的理由这样做,这当然不适用 - 这只是一般规则。
【讨论】:
以上是关于如何使用 C# 删除数据表中的重复条目? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 plotly subplots() 删除重复的图例条目
如何使用 python 有选择地删除 x 行以在数据框中重复条目?