如何在LINQ查询中使用GROUP BY获取MAX行?

我正在寻找一种在LINQ中匹配以下SQL查询的方法。


Select max(uid) as uid, Serial_Number from Table Group BY Serial_Number

真的在这方面寻求一些帮助。上面的查询由于Group By语法而获得每个序列号的最大uid 。


皈依舞
浏览 843回答 3
3回答

神不在的星期二

    using (DataContext dc = new DataContext())        {            var q = from t in dc.TableTests                    group t by t.SerialNumber                        into g                        select new                        {                            SerialNumber = g.Key,                            uid = (from t2 in g select t2.uid).Max()                        };        }

交互式爱情

var q = from s in db.Serials        group s by s.Serial_Number into g        select new {Serial_Number = g.Key, MaxUid = g.Max(s => s.uid) }

互换的青春

以方法链形式:db.Serials.GroupBy(i => i.Serial_Number).Select(g => new    {        Serial_Number = g.Key,        uid = g.Max(row => row.uid)    });
打开App,查看更多内容
随时随地看视频慕课网APP