DataTable中的选定列

时间:2011-09-26 22:54:36

标签: c# .net datatable

如何从DataTable中获取Selected列?
例如,我的BaseTable有三列,如ColumnA,
ColumnB和
ColumnC。

现在作为中间操作的一部分,我需要仅从ColumnA检索所有行。是否有任何预定义的公式,就像 DataTable.Select?

一样

2 个答案:

答案 0 :(得分:8)

DataView.ToTable Method.

DataView view = new DataView(MyDataTable);
DataTable distinctValues = view.ToTable(true, "ColumnA");

现在你可以选择。

DataRow[] myRows = distinctValues.Select();

答案 1 :(得分:2)

通过这个问题:How to select distinct rows in a datatable and store into an array您可以获得不同的值:

DataView view = new DataView(table);
DataTable distinctValues = view.ToTable(true, "ColumnA");

如果您正在处理大型DataTable并关心性能,我建议在.NET 2.0中使用以下内容。我假设你显示的数据类型是一个字符串,所以请根据需要进行更改。

Dictionary<string,string> colA = new Dictionary<string,string>();
foreach (DataRow row in table.Rows) {
    colA[(string)row["ColumnA"]] = "";
}
return colA.Keys;