如何从嵌套在数组中的子文档中获取转换?

时间:2013-03-09 02:02:06

标签: mongodb

使用这样的模式,其中“items”字段包含具有嵌套翻译的子文档数组:

{
        "_id" : ObjectId("513740415b51ea0803000001"),
        "items" : [
                {
                        "id" : ObjectId("5137407f5b51ea100f000000"),
                        "title" : {
                                "en" : "Yes",
                                "fr" : "Oui",
                                "es" : "Si"
                        }
                },
                {
                        "id" : ObjectId("5137407f5b51ea100f000003"),
                        "title" : {
                                "en" : "No"
                        }
                }

        ],
}

您如何从“5137407f5b51ea100f000000”项目中获取英语(“en”)翻译?

结果应返回“是”。

1 个答案:

答案 0 :(得分:0)

在shell中它将是:

db.test.findOne(
    {'items.id': ObjectId("5137407f5b51ea100f000000")}, 
    {'items.$': 1}
).items[0].title.en