C# 如何删除数据集中的列和不同的行以仅查找组名?

C# 如何删除数据集中的列和不同的行以仅查找组名?,c#,dataset,distinct,dataview,C#,Dataset,Distinct,Dataview,我有一个数据集,它有3列 Name - insurance comp. name - treatmentDate Ali Boz SGK 12.04.09 Ali Boz SGK 14.04.09 Ali Boz SGK 16.04.09 Ali Boz SGK

我有一个数据集,它有3列

Name    -    insurance comp. name     -     treatmentDate
Ali Boz      SGK                            12.04.09
Ali Boz      SGK                            14.04.09
Ali Boz      SGK                            16.04.09
Ali Boz      SGK                            18.04.09
Veli Aş      AKBANK                         10.04.09
Veli Aş      AKBANK                         11.04.09
Veli Aş      AKBANK                         12.04.09
Veli Aş      AKBANK                         13.04.09
Cuneyt Sel   ING BANK                       01.05.09
Cuneyt Sel   ING BANK                       02.05.09
Cuneyt Sel   ING BANK                       05.05.09
Cuneyt Sel   ING BANK                       19.05.09
我想先找到唯一的保险公司。名字

SGK
AKBANK
ING BANK
然后我想按姓名和日期排序

但是数据集中的所有这些东西(因为我想从数据库中检索所有行)


您有什么建议吗?

不确定您的具体要求,但要检索保险公司名称,您只需执行以下操作:

SELECT DISTINCT [insurance comp. name]
FROM [tablename]
要按您所述对所有记录进行排序,请执行以下操作:

SELECT *
FROM [tablename]
ORDER BY [insurance comp. name], [name], [treatmentdate]

如果您可以使用LINQ,这将为您提供保险公司名称:

var Names = (from Row in YourDataSet.YourTable
             select Row.InsuranceCompanyName).Distinct();
如有必要,您还可以根据需要添加
.ToArray()
.ToList()
orderby


如果您不能使用LINQ或更改SQL调用,则它是。

使用DataView非常简单。ToTable:

DataView view = new DataView(table);
DataTable distinctTable = view.ToTable(true, "insurance comp. name");

您使用的是哪个版本的C#?VS2008/C#3?是的,你是对的。当我搜索Linq to DATASE dll时,我发现了这样一个:“Linq的名称空间现在是System.Linq.System.Data.Extensions.dll,已被System.Data.DataSetExtensions.dll替换。此外,您应该使用AsEnumerable,而不是ToQueryable。”它工作了吗?若并没有,你们能用错误和代码更新你们的问题吗?