linq查询以递增0.50获取数据

时间:2014-07-31 09:22:42

标签: c#

在我的数据库表xyz中,我有两个字段abc和pqr。

abc是1,2,3,4,5,6,7,8,pqr是12.11,13.13,14.12,15.12,16.14,17.12,18.21,19.12。现在我想根据abc以.5的增量来获取记录。

例如,如果1然后12.11,1.5然后avgof pqr为1和2.并且想要使用linq查询。

1 个答案:

答案 0 :(得分:0)

以下内容:

private static void Main(string[] args)
{

var abc = new[] { 1, 2, 3, 4, 5, 6, 7, 8 };
var pqr = new[] { 12.11, 13.13, 14.12, 15.12, 16.14, 17.12, 18.21, 19.12 };

var values = abc.Take(abc.Length - 1).ToDictionary(
    o => 0.5 + o,
    o => new[]
{
    pqr.Skip(1).ToList()[o], 
    pqr.Take(pqr.Length - 1).ToList()[o]
}.Average());
abc.ToList().ForEach(o => values.Add(o, pqr[o]));

显示值:

foreach (var value in values.Keys)
{
    Trace.WriteLine(string.Format("Key:{0} Value:{1}", value, values[value]));
}