tSalesr表有date欄位和amount欄位,其中date欄位是年月日時分秒,我想按日期分組合計amount,同一天合計一個值
var sum = _dbContext.tSales.Where(a => a.date.Value >= dt1 && a.date.Value <= dt2)
.GroupBy(a => a.date.Value)
.Select(a => new {
sum_amount = a.Sum(b => b.amount) }).ToList()
但這樣的代碼得到的是按年月日時分秒分組,怎樣可以按天分組?
uj5u.com熱心網友回復:
.GroupBy(a => a.date.day)uj5u.com熱心網友回復:
大概就是這個意思吧。uj5u.com熱心網友回復:
我改成
.GroupBy(a => a.date.Value.Date)
錯誤如下:
LINQ to Entities 不支持指定的型別成員“Date”。只支持初始值設定項、物體成員和物體導航屬性
后來改成
.GroupBy(a => DbFunctions.TruncateTime(a.date.Value))
就可以了!!
uj5u.com熱心網友回復:
哦,這個是因為linq 轉換 sql時 不認識你的方法。
需要DbFunctions.TruncateTime來幫助轉換成你要的sql
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/86331.html
標籤:LINQ
上一篇:C#重名寫法
下一篇:求人事資訊管理系統源代碼
