Mongo Db - 如何迭代聚合函数并将集合转换为单个字段?

时间:2016-07-06 01:55:04

标签: mongodb mongodb-query aggregation-framework

我有2个mongo db集合,我正在尝试创建一个Report视图..

我正在尝试链接这两个表来创建一个用于报告目的的平面表结构。为简单起见,我们假设我的集合1 让我们称之为"用户"如下

for(let i=0;i<options.length;i++){
  optionsMarkup.push(<option key={options[i]} value={options[i]}>{options[i]}</option>);
}

这是我的收藏2: - 称为UserHistory

{"_id": LUUID("958cf136-c820-bc48-ad7d-b3795fa47e8b"),
  "UserData": {
    "Userid": "5296783",
    "UserName": "John Mathew",
    "User DOB" : "1985-05-22"
} } 

这是我想要实现的输出:

vpmovzxdq

现在问题:我如何遍历历史集合来创建平面结构?我正在使用聚合但不知道如何使用for循环。

这是我的查询。我想改变这个领域&#34; USer History&#34;到个别领域

  {
    "_id": "09018481-0e88-4b44-b0dc-000dff7ba618",
    "User Reference Id": "5296783",
    "History": [
      {
        "Page Visited": "Home.html",
        "Visit StartTime": "2016-05-12T02:33:37.072Z",
        "Visit EndTime": "2016-05-12T03:33:37.072Z"
      },
      {
        "Page Visited": "About.html",
        "Visit StartTime": "2016-05-12T02:33:37.072Z",
        "Visit EndTime": "2016-05-12T03:33:37.072Z"
      },
      {
        "Page Visited": "Career.html",
        "Visit StartTime": "2016-05-12T02:33:37.072Z",
        "Visit EndTime": "2016-05-12T03:33:37.072Z"
      }
    ]  }

注意:这是一个虚拟集合。真实场景要复杂得多。使用此示例进行解释。聚合函数有效。所以请忽略任何语法或拼写错误。

0 个答案:

没有答案