我弄明白,我的答案在本节的底部。
任何帮助都会很棒谢谢。
我有一个名为Rank的列表,可以保存1-5的值
我要做的是将Data Back存储到数据集中以便稍后显示
例如
Rank
_____
4
3
5
4
2
我现在的SQL查询。
select rank, COUNT(*) as rankCount from Result group by rank
我想显示
五级= 1
四级= 2
三级= 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();
}
}
答案 0 :(得分:0)
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);
}
答案 1 :(得分:0)
这种事情在数据库中更适合(和更快)。所以我会这样做:
(我有一张包含相似数据的表,所以我的&#34; targetType&#34;相当于你的&#34; rank&#34;。)
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