var PAS =
(from v in dc.PAS
where
days.Contains(Convert.ToDateTime(v.fecha))
group v.valor by new { v.entidad_id, v.modulo_id, v.peticion_id, v.hora_id, v.dia_id } into hg
orderby hg.Key.entidad_id descending, hg.Key.peticion_id ascending, hg.Key.hora_id descending
select new
{
Hora = hg.Key.hora_id,
Dia = hg.Key.dia_id,
Entidad = hg.Key.entidad_id,
Modulo = hg.Key.modulo_id,
Peticion = hg.Key.peticion_id,
Media = Math.Round(System.Convert.ToDouble(hg.Average()), 3, MidpointRounding.AwayFromZero)
};
然后做一个foreach,并将每个结果的新行插入到另一个具有这个新值的表中......(因为我不能批量,至少我不知道如何在LINQ中)
我有三个v.peticion_id
可能的值...我想获得两个 ' Media
' 列,一个带有实际媒体,另一个仅带有v.peticion_id = 0
值...我无法更好地解释,所以这里是我想要获得的示例。 ..
Hora | Dia | Entidad | Modulo | Peticion | Media | Media2
0 0 0 0 0 333.3 | 333.3
0 0 0 0 1 4.4 | 333.3
0 0 0 0 2 0.7 | 333.3
1 0 0 0 0 178.2 | 178.2
1 0 0 0 1 1.8 | 178.2
1 0 0 0 2 0 | 178.2
我希望有一个人可以帮助我..