列を持つテーブルがありますOneStopPrice; MultiStopPrice; NonStopPrice
。Min()
3列すべてに必要です。ただしMin()
、いずれかの列が 0 の場合は無視する必要があります。
OneStop | NonStop | MultiStop
-----------------------------
233.23 | 0.0 | 355.23
ここでは、NonStop を無視するために最高値と見なす必要があります。
誰でもこれを使用してアイデアを持っていLinQ
ますか?
次のようにクエリを使用しました。
var data = odyResults.GroupBy(logEle => new { logEle.Air.FromCity, logEle.Air.ToCity }, (key, group) => new{
FromCity = key.FromCity,
ToCity = key.ToCity,
OneStopPrice = group.Min(x=>x.Air.OneStopPrice),
MultiStopPrice = group.Min(x => x.Air.MultiStopPrice),
NonStopPrice = group.Min(x => x.Air.NonStopPrice),
FromToCityCount = group.Count()
});