【问题标题】:Mongoose query penultimate item from array of objectsMongoose 从对象数组中查询倒数第二个项目
【发布时间】:2021-09-23 17:00:28
【问题描述】:

我有一个模式,每个模式都包含一个对象数组,如下所示:

{name: String, _id: ObjectId}

每个模式数组都有多个项目,我需要匹配聚合函数中倒数第二个(倒数第二个)项目_id,目前看起来像这样:

{ "$match": {$expr: {$gt: [{"$arrayElemAt": ["$path._id", -2]}, mongoose.Types.ObjectId(req.params.id)]}}},
{ "$project": {
        "_id": 1,
        "name": 1,
        "isFile": {
            "$cond": [{"$eq": [{"$ifNull":["$data", null]}, null]},false, true]
        }
    }
}

(当前的匹配功能是我的尝试,但它不起作用) 任何帮助将不胜感激!

【问题讨论】:

    标签: arrays database mongoose aggregation-framework match


    【解决方案1】:

    答案:用 $eq 代替 $gt...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-13
      • 2018-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-02
      相关资源
      最近更新 更多