0

我在 mongoDB 中有一组具有这种结构的文档:

{
    _id: ObjectId("50f970caaa070bb8150000ae"),
    名词:“阿根廷”,
    poblacion: 1000,
    省:[
        {
            名称:“布宜诺斯艾利斯”,
            gobernador:“豪尔赫·路易斯”,
            cantMedicos: 2,
            _id: ObjectId("50f970caaa070bb8150000a9")
        },
        {
            名称:“卡塔马卡”,
            gobernador:“罗德里戈·内拉”,
            cantMedicos: 5,
            _id: ObjectId("50f970caaa070bb8150000aa")
        }
    ]
}

我想从父母的“名词”等于“阿根廷”的所有“省”中打印字段“gobernador”。但我找不到在 PHP 中实现这一点的方法。

4

1 回答 1

0

第一步是{ nombre: "Argentina" }通过MongoCollection::find()选择所有文档。这应该返回一个可迭代的MongoCursor并允许您访问所有匹配的文档。

每个文档都是一个数组,因此您可以像上面评论中提到的 Sammaye 一样访问相应的字段。

您还可以选择在匹配文档中包含find() 项目特定字段,如果您的文档非常大并且您希望减少 (a) 从 MongoDB 传递到驱动程序的数据量和/或 (b)处理返回的文档所消耗的内存量。查询预测是通过第二个参数控制的,MongoCollection::find()并记录在上述链接中。

于 2013-01-18T19:14:39.140 回答