MongoDB查询数组

时间:2015-12-05 04:59:49

标签: arrays mongodb

我有一份文件,其中股票价格保存在MongoDB数组中的嵌入式文档中。我需要获得一个股票价格,具体取决于日期,并且都显示在模板中,并且还用于进一步的计算。

我有一个Meteorpad示例。获得股票价格的助手从/client/app.js第25行开始,使用@Hakan Kose答案中的代码。不知道如何更改最后一行(console.log在这里不起作用)。

对于2015-12-01,查询应返回117.34

{
  ticker: "AAPL",
  valuationDate: "2015-12-01",
  closingPrices: [
    {date: "2015-12-01", close: "117.34"},
    {date: "2015-12-02", close: "116.28"},
    {date: "2015-12-03", close: "115.20"},
    {date: "2015-12-04", close: "119.03"}
  ]
}

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以轻松地执行此操作;

Valuations.findOne({_id:this._id}, function(data){
   data.closingPrices.forEach(function(closingPrices){
       if(closingPrices.date === valuationDate){
           console.log(closingPrices.close)
       }
   });
});