我的数据表中有四列名SrNo,RollNo,Name,Age
,相应的值为
SrNo ,Roll No,Name,Age
1, 1, ABC, 20
2, 2, DEF, 22
3, 3, ABC, 25
我想搜索有多少不同的名字出现&他们的数量。
请建议
由于
答案 0 :(得分:1)
最简单的方法可能是使用LINQ(IMO,无论如何):
var groups = table.AsEnumerable()
.GroupBy(x => x.Field<string>("Name"))
.Select(g => new { Name = g.Key, Count = g.Count() });
假设您确实拥有DataTable
中的数据。如果它实际上仍在数据库中,则可以使用类似的LINQ to SQL查询:
var groups = dataContext.GroupBy(x => x.Name)
.Select(g => new { Name = g.Key, Count = g.Count() });
实际上你可以使用GroupBy
的重载来在一个方法调用中完成所有操作:
var groups = dataContext.GroupBy(x => x.Name,
(key, group) => new { Name = key,
Count = group.Count() });
答案 1 :(得分:1)
select count(1) as cnt, Name from mytable group by Name
答案 2 :(得分:0)
编写一个创建此摘要的SQL查询,并使用ADO.NET执行它。
答案 3 :(得分:0)
如果要使用sql server。以下是答案
Select Name, count(Name)
From YourTableNamew
Group by Name
答案 4 :(得分:0)
SELECT COUNT(DISTINCT column_name) FROM table_name group by column_name