select row_number()over(order by total),* from adayrate
查询到的数据是:
1 张三 100
2 李四 90
3 啊舒服 90
4 爱是 80
5 斯蒂芬 75
6 士大夫 75
7 刘德华 70
(1)这个用Linq怎么实现?
如果需要得到下面这样的数据,该又怎么实现啊?
1 张三 100
2 李四 90
2 啊舒服 90
4 爱是 80
5 斯蒂芬 75
5 士大夫 75
7 刘德华 70
(2)这个用Linq怎么实现?
如果需要得到下面这样的数据,该又怎么实现啊?
1 张三 100
2 李四 90
2 啊舒服 90
3 爱是 80
4 斯蒂芬 75
4 士大夫 75
5 刘德华 70
(3)这个用Linq怎么实现?
1.
//参考思路 这是如何实现Row_Number的
public List<ScoreWithRank> GetHighScoresWithRank(string gameId, int count)
{
Guid guid = new Guid(gameId);
using (PPGEntities entities = new PPGEntities())
{
var query = from s in entities.Scores
where s.Game.Id == guid
orderby s.PlayerScore descending
select new
{
PlayerName = s.PlayerName,
PlayerScore = s.PlayerScore
};
return query.AsEnumerable() // Client-side from here on
.Select((player, index) => new ScoreWithRank()
{
PlayerName = player.PlayerName,
PlayerScore = player.PlayerScore,
Rank = index + 1;
}
.ToList();
}
}
2.
start = page * rowsPerPage;
Products.OrderByDescending(u => u.Sales.Count())
.Skip(start)
.Take(rowsPerPage)
.AsEnumerable()
.Select((u, index) => new { Product = u, Index = index + start });