【发布时间】:2012-11-15 02:59:52
【问题描述】:
基于这个问题:
[如何使用 LINQ 执行 SELECT UNIQUE?
我编写了以下表达式来从包含多个列的 dt 数据表中选择具有唯一 OrganizationID 列的行。
var distinctRows = (from DataRow dRow in dt.Rows
select new { col1 = dRow["OrganizationID_int"] }).Distinct();
但是当我在执行表达式后检查distinctRows 时,它只有一列(col1)的记录,而不是保存整个列。我担心添加 col2=... 等表达式可能会被解释为我想在所有这些列上选择不同的。
那么,如何在仅对 1 列而不是整列应用唯一过滤器时获取整行?
【问题讨论】:
-
我不确定您要做什么。你能粘贴一些示例数据吗?
-
如果多行具有相同的
OrganizationID_int、第一、最后、最旧、最新、最高...,您要保留哪一行? -
@Tim:我想要满足所有列的独特条件的整行。我想在下一步中迭代。
-
@Farshid:所以您只想要唯一的行并且不想按该字段分组,对吗?
-
@Farshid:添加了答案。 stackoverflow.com/a/13585738/284240
标签: c# linq distinct-values