var ci = ctx.CI().Where(p => p.PId == pId);
var result = ctx.RM().Where(p => p.R.D.PId == Id && p.MTId == mt.Id).
Sum(p => (((p.M.TN * p.EC * p.F.PW * 52m) + (p.M.TN * p.EC * p.F.PY * (WW/52m)))
/100m) * ci.FirstOrDefault(q => q.PId == p.R.PId.Value && q.FPId == p.R.FPId.Value).Factor);
8000條記錄。查詢需要2000ms來加載,使用CI和RM加入。如何加快查詢速度
正如你所看到的,有6個表使用。 CC,RM,R,D,F和M.
模型是使用CodeFirst定義的,所以我使用EF 4.1。
我如何加快我的查詢運行速度超過2秒?
什麼是生成的TSQL?您是否通過在SSMS中優化的基於計劃的查詢來運行已執行的TSQL?你可能會缺少索引。 – bzlm