如何在mongo中匹配来自同一文档的字段值?

苏拉吉

我有以下文件:

{
    "_id" : "bfc523ad-c09d-4be8-99c2-64a709cf95ab",
    "field1" : {
        "c1" : "bfc523ad-c09d-4be8-99c2-64a709cf95ab",
        "c2" : "pl_PowerList_bfc523adc09d4be899c264a709cf95ab",
    },
    "Columns" : [ 
        {
            "name" : "abc49777",
            "lookup":{
                "id":"bfc523ad-c09d-4be8-99c2-64a709cf95ab"
            }

        }, 
        {
            "name" : "abc7846",
            "lookup":{
                "id":"cgc523ad-c09d-4be8-99c2-64a709cf95xy"
            }

        }
    ]
}

现在,我要获取所有field1.c1值等于Columns.lookup.id的文档(在任一列中)。我尝试了以下查询:

db.mycollection.find({$where:"this.field1.c1 == this.Columns.lookup.id"})

当我执行上述查询时,我收到错误消息,指出字段ID未定义。我希望所有此类文档中至少有一列具有与该文档的field1.c1相同的lookup.id。我该怎么做?

4J41

您可以尝试以下方法:

db.mycollection.find( 
{ $where: 
    function() {
        var array = this.Columns;
        for (var i in array) {
            if(array[i].lookup.id == this.field1.c1) {
                return true;
            }
        }
        return false;
    }
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Markdown中链接到同一文档的一部分?

使用字段值更新同一文档中的另一个字段

同一文档中的不同内容

在Firestore交易中更新同一文档的多个字段时的定价

Mongo DB汇总分组属于同一文档的多个值

如何在MongoDB更新中将字段的值推入同一文档的另一个数组字段中

使用同一文档中的值从JSONB文档中的数组中选择项目

如何在Mongodb中通过仲裁计算同一文档中两个数组的元素频率

如何根据两个字段值导出唯一文档?

如何在同一文档下检索Firebase Firestore多个字段数据到RecyclerView

如何多次打开同一文档?

MS WORD。如何在同一文档中创建指向图片的链接?

如何在Word文档中建立到同一文档中其他位置的超链接?

如何在mongo中检查同一文档中的两个值?

如何在Evince中打开同一文档的多个实例?

Office Word。如何在单独的窗口中打开同一文档?

在多个网站中引用同一文档

同一文档中3个字段的平均值

使用聚合将文档的一个字段与同一文档的数组大小进行匹配

同一文档中的img src = svg

MongoDB:更新同一文档的嵌套元素中的字段

如何连接同一文档中的数组?

比较同一文档中的两个数组字段

如何在 ElasticSearch 中比较同一文档中的两个字段?

在 Firestore 中更新同一文档的 10 个不同字段。顺序重要吗?

使用同一文档中的字段减少 mongodb 中的字段

如何将特定字段的值分配给 Firestore Swift 中同一文档内的另一个字段?

如何在同一文档中检查 6 个值中的任意 3 个

用同一文档中数组的第一个元素替换字段值