Linq 求平均值,sql语句转换成linq语句
发布网友
发布时间:2022-04-10 12:34
我来回答
共1个回答
热心网友
时间:2022-04-10 14:04
先说明,Linq不一定快的。
Health[] data = new Health[0];//假定你已经取到了Array格式的数据,IEnumerable也行,就这个意思
var result = data.ToArray().GroupBy(s => s.dormId).Select(s => new Health() { dormId = s.Key,grade = s.Average(t=>t.grade) }).OrderByDescending(s=>s.grade).Take(10).ToArray();
//也可以这样
var res = (from s in (from s in data group s.grade by s.dormId) orderby s.Average() descending select new Health() { dormId = s.Key, grade = s.Average() }).Take(10).ToArray();