繁体   English   中英

MongoDB 聚合未更新我的收藏

[英]MongoDB Aggregation not updating my collection

我正在尝试使用他们的 nodejs 驱动程序在 Mongo 中运行聚合查询,这需要我的一些字段并添加/查找平均值等。我在 Mongo Cloud 中构建了聚合并将其导出到节点,但是当我运行代码时,我从 Mongo 获得以下回复:

this.res 无法序列化。

steps.update_mongo.res:null

这是代码(历史字段是一个对象数组):

const agg = [
  {
    '$addFields': {
      'avgGrowth': {
        '$ceil': {
          '$avg': '$history.growth'
        }
      }, 
      'avgDecline': {
        '$ceil': {
          '$avg': '$history.decline'
        }
      }
    }
  },
  {
    '$merge': {
      'into': {'db':'mydb', 'coll':'test'},
      'on': '$_id'
      },
  }
];

const coll = await db.collection('test');

this.res = await coll.aggregate(agg, async(cmdErr, result) => {
  await assert.equal(null, cmdErr);
});
this.res = await coll.aggregate(agg, async(cmdErr, result) => {
  await assert.equal(null, cmdErr);
});

是不正确的语法。 您要么提供回调,要么使用等待,而不是两者。

尝试使用如下:

this.res = await coll.aggregate(agg);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM