从Mondo DB / Oracle样式中的先前行访问数据MongoDB的滞后操作

时间:2013-02-18 14:07:11

标签: oracle mongodb aggregation-framework

在Oracle中,存在LAG分析功能,用于访问前一行的数据。

使用MongoDB有没有直接的方法来实现同样的效果?

我真正想要做的是显示股票价格的每日变化。所以从下面输入

 {
    {"stock":"Bob",
     "date":"2012-12-01",
     "price":97.99                         
    },
    {"stock":"Bob",
     "date":"2012-12-02",
     "price":98.99                         
    },
    {"stock":"Bob",
     "date":"2012-12-03",
     "price":99.99                         
    },
    .
    .
    .      
}

我想要返回

的内容
 {
   {"stock":"Bob",
     "date":"2012-12-01",
     "dailyChange":null                         
    },
    {"stock":"Bob",
     "date":"2012-12-02",
     "dailyChange":1.0                         
    },    
    {"stock":"Bob",
     "date":"2012-12-03",
     "dailyChange":1.0                         
    },
    .
    .
    .      
}

但要做到这一点,我需要访问我每次处理的行之前的行。如果可能的话,能够使用聚合框架做到这一点真的很棒。

任何建议都非常感谢。

谢谢,

更新:

如下所示,由于数据没有变化,因此存储此信息是有意义的。这意味着,每当新的价格出现新的每日变化值时,都需要创建。

这样做的最佳方法是什么?地图缩减任务似乎最好,但我不清楚这是如何构建的。

0 个答案:

没有答案