首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

datatable.Compute("Count(Distinct(列名))""true")出错解决办法

2012-02-15 
datatable.Compute(Count(Distinct(列名)),true)出错网上查了下,说不支持distinct,如果不用distince如

datatable.Compute("Count(Distinct(列名))","true")出错
网上查了下,说不支持distinct,如果不用distince如何达到同样的效果呢?

[解决办法]
你可以通过后面的Filter添加计算的条件,但是Distinct是不支持的!
如果条件不好写,那写一个循环也未必不可
[解决办法]
同样楼上...

确实不支持distinct...


[解决办法]
datatable是个好东西...
[解决办法]
循环吧
[解决办法]
这样可以不?

ArrayList list = new ArrayList();
foreach (DataRow row in table.Rows )
{
if (!list.Contains(row[ "列名 "]))
{
list.Add(row[ "列名 "]);
}
}
//列数
int columnCount = list.Count;
[解决办法]
你直接用sql取的时候,就把重复的项给排除不行吗?

dt.Compute中用不了 "distinct "...

或者自己写一个方法...

[解决办法]
for example:

private int DistinctColumnCount(DataTable table, string columnName)
{
ArrayList list = new ArrayList();
foreach (DataRow row in table.Rows)
{
string value = row[columnName].ToString();
if (!list.Contains(value))
{
list.Add(value);
}
}
return list.Count;
}
[解决办法]
呵呵,我也找了半天,终于找到办法了,其实有个方法就是:DataView.ToTable(bool distinct,string[] columnname )
[解决办法]
good

热点排行