-1

我想我的答案在本节的底部。

任何帮助都会很棒谢谢。

我有一个表,其中有一个名为 Rank 的列,它可以保存 1-5 的值

我想要做的是将数据返回存储到数据集中以便稍后显示

例如

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();
    }

}
4

2 回答 2

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);
}
于 2013-03-02T02:38:41.207 回答
0

这种事情在数据库中更适合(并且更快)。所以我会这样做:

(我有一个包含类似数据的表,所以我的“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
于 2015-11-19T03:42:27.020 回答