Linq 查询:根据设备类型和企业 ID 计算总功率
var query = (\n from i in db.Inverter_History\n where !i.Deleted\n group i by i.EquipmentId into g\n let Id = g.OrderByDescending(i => i.RecordTime).FirstOrDefault().Id\n select new\n {\n EquipmentId = g.Key,\n Id\n }\n).ToList();\n\nvar result = (\n from t in query\n join i1 in db.Inverter_History on t.Id equals i1.Id into i1Group\n from i1 in i1Group.DefaultIfEmpty()\n join e in db.Equipment_Info on t.EquipmentId equals e.Id\n join e0 in db.Equipment_Type on e.EquipmentTypeId equals e0.Id\n join b in db.Base_Enterprise on e.EnterpriseId equals b.Id\n where !i1.Deleted && !e.Deleted && e.IsEnable && !e0.Deleted && e0.IsEnable && !b.Deleted && b.IsEnable && e.EnterpriseId == "32a6060f-0914-11ee-84b7-6c3c8c6a422e"\n group i1 by e.EnterpriseId into g\n select new\n {\n PowerInverter = g.Sum(i => i.PowerInverter ?? 0.0),\n ThisPower = g.Sum(i => i.ThisPower ?? 0.0)\n }\n).FirstOrDefault();
原文地址: https://www.cveoy.top/t/topic/pIr2 著作权归作者所有。请勿转载和采集!