C# Linq to Entity Lamda方式分組並求和求平均值


1、單字段分組並求和:

var list = data.GroupBy(g => g.GoodsId).Select(e => new { GoodsId = e.Key, Qty = e.Sum(q => q.Qty) });

2、多字段分組求和:

var list = data.GroupBy(g => new { g.StorageId,g.GoodsId }).Select(e => new { GoodsId = e.Key, Qty = e.Sum(q => q.Qty) });

求平均值直接把Sum更換成:Average即可。

3、具有導航屬性的類求和及分組:

var list = data.GroupBy(g => new { g.StorageId,g.GoodsId }).Select(e => new {
                    StorageName = e.Select(i => i.Storage.Name).FirstOrDefault(),
                    GoodsName = e.Select(i => i.Goods.Name).FirstOrDefault(),                   
                    CategoryName = e.Select(i => i.Goods.CategoryName).FirstOrDefault(),
                    Qty = e.Average(q => q.Qty) });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM