C# 清点及;搜索DataTable上的数据

C# 清点及;搜索DataTable上的数据,c#,database,C#,Database,我的数据表中有四列nameSrNo、RollNo、name、Age,对应的值如下 SrNo ,Roll No,Name,Age 1, 1, ABC, 20 2, 2, DEF, 22 3, 3, ABC, 25 我想搜索有多少不同的a名称及其计数 请建议 谢谢要做到这一点,最简单的方法可能是使用LINQ(无论如何,在国际海事组织): 实际上,您可以使用GroupBy的重载在一个方法调用中完成这一切: var groups = dataCon

我的数据表中有四列name
SrNo、RollNo、name、Age
,对应的值如下

SrNo ,Roll No,Name,Age
1,      1,     ABC, 20
2,      2,     DEF, 22
3,      3,     ABC, 25
我想搜索有多少不同的a名称及其计数

请建议


谢谢

要做到这一点,最简单的方法可能是使用LINQ(无论如何,在国际海事组织):

实际上,您可以使用
GroupBy
的重载在一个方法调用中完成这一切:

var groups = dataContext.GroupBy(x => x.Name,
                                 (key, group) => new { Name = key, 
                                                       Count = group.Count() });

编写创建此摘要的SQL查询,并使用ADO.NET执行它。

如果要使用SQL server。下面是答案

Select Name, count(Name)
From YourTableNamew 
Group by Name

很好的解决方案,但在实现它时,我在x上遇到了错误,因为它说x不能使用,因为它已经在父级中使用了。@user373083:如果在方法的其他地方已经有一个名为
x
的变量,只需将
x
的地方更改为其他地方,例如
z
。Group by正在执行Distinct的工作。所以我们应该在查询中省略它。
var groups = dataContext.GroupBy(x => x.Name,
                                 (key, group) => new { Name = key, 
                                                       Count = group.Count() });
Select Name, count(Name)
From YourTableNamew 
Group by Name
select count(1) as cnt, Name from mytable group by Name
SELECT COUNT(DISTINCT column_name) FROM table_name group by column_name