在数据集中存储结果的列中选择查询计数特定值
本文关键字:查询 选择 数据集 数据 集中 存储 结果 | 更新日期: 2023-09-27 18:01:44
我想我的答案在这部分的底部。
任何帮助都将是伟大的,谢谢。
我有一个名为Rank的列的表,它可以保存1-5的值
我想做的是把数据存储回一个数据集,稍后在
上显示例如Rank
_____
4
3
5
4
2
我的SQL查询,我现在有。
select rank, COUNT(*) as rankCount from Result group by rank
我想显示
五阶= 1
4位= 2
3 rank = 1
两个rank = 1
1位= 0
myDataSet.Table[0].Rows[0].Field<int>("rank"); ??
我不知道怎么做,如果有任何帮助就太好了,谢谢。
相同的查询
select rank, COUNT(*) as rankCount from Result group by rank
myDataTable = MyDataSet.Table[0];
string rank5 = string.Empty;
Foreach(DataRow row in myDataTable.Rows){
if(row["rank"].ToString() == "5"){
rank5 - row["rankCount"].ToString();
}
}
public class RankGroup
{
public int Rank { get; set; }
public int RankCount { get; set; }
public override string ToString()
{
return string.Format("Rank Number: {0} Rank Number Count: {1}", Rank, RankCount);
}
}
var rankGroups = myDataSet.Table[0].Rows.Cast<Row>().Select(r =>
new RankGroup
{
Rank = r.Field<int>("rank"),
RankCount = r.Field<int>("rankCount")
}
foreach(var rankGroup in rankGroups)
{
Console.WriteLine(rank);
}
这种事情在数据库中更适合(也更快)。所以我会输入:
(我有一个类似的数据表,所以我的"targetType"等于你的"rank")
select targetType,
case targetType
when 1 then 'One'
when 2 then 'Two'
when 3 then 'Three'
when 4 then 'Four'
when 5 then 'Five'
else '' end + ' Rank' as Description,
count(1) [Count]
from Logs
where targetType between 1 and 5
group by targetType
order by 1
targetType Description Count
1 One Rank 264
2 Two Rank 248
3 Three Rank 692
4 Four Rank 441