C# Linq to SQL if语句
然后执行foreach,并将每个结果的新行插入到另一个具有此新值的表中。。。(因为我不能散装,至少我不知道如何在LINQ中散装) 我有三个C# Linq to SQL if语句,c#,sql,linq,C#,Sql,Linq,然后执行foreach,并将每个结果的新行插入到另一个具有此新值的表中。。。(因为我不能散装,至少我不知道如何在LINQ中散装) 我有三个v.peticion\u id可能的值。。。我想得到两个“Media”列,一个包含实际的媒体,另一个仅包含v.peticion_id=0值。。。我无法更好地解释,所以这里有一个我想要得到的例子 var PAS = (from v in dc.PAS where days.Contains(Conv
v.peticion\u id
可能的值。。。我想得到两个“Media
”列,一个包含实际的媒体,另一个仅包含v.peticion_id=0
值。。。我无法更好地解释,所以这里有一个我想要得到的例子
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)
};
我希望有人能帮助我。只需选择
v.peticion\u id==0
或者我误解了你想在这里做什么?如果我这样做,我只会得到peticion_id==0的结果,但我想得到0、1和2,但column Media2只是peticion_id==0的平均值对不起@user1381537,但我不知道你的意思。你能试着解释一下吗?首先分组,不使用
peticion_id
,计算Media2
条件peticion_id==0
,然后按peticion_id
将这些数据分组,并计算平均值。你能写一个示例代码吗??我不知道如何使用peticion\u id==0的条件分组,然后在同一查询中使用peticion\u id
分组。。。非常感谢。
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