如何使用PHP Mongo从文档中获取嵌套数组

时间:2014-07-05 13:17:27

标签: php mongodb

这里我有两个文件,我需要查询才能得到title="post one"comments: userid="1"我想要只获得上述条件的评论。不是所有的评论。

`{    “_id”:ObjectId(“53b7f2383ed7755c2400002e”),    “标题”:“后一个”,    “作者”:“鲍勃”,    “已发布”:ISODate(“2014-07-05T12:40:24.0Z”),    “pageViews”:NumberInt(5),    “评论”: {      “0”:{        “userid”:“1”,        “文字”:“这很酷”     },      “1”:{        “userid”:“2”,        “文字”:“这很糟糕”     },      “3”:{        “userid”:“3”,        “text”:“这是badexample”     }     “4”:{        “userid”:“4”,        “text”:“No Thanx”     }     “5”:{        “userid”:“1”,        “文字”:“不好”     }     “6”:{        “userid”:“1”,        “text”:“测试”     }     “7”:{        “userid”:“1”,        “文字”:“没有它的好还可以”     }     “8”:{        “userid”:“1”,        “text”:“测试ddd”     }

} } `

{ "_id": ObjectId("53b7f2383ed7755c2400002e"), "title": "Post Two", "author": "bob", "posted": ISODate("2014-07-05T12:40:24.0Z"), "pageViews": NumberInt(5), "comments": { "0": { "userid": "1", "text": "this is cool" }, "1": { "userid": "2", "text": "this is bad" }, "3": { "userid": "3", "text": "this is badexample" } "4": { "userid": "4", "text": "No Thanx" } } }

1 个答案:

答案 0 :(得分:0)

可以像这样查询文档中的数组

db.posts.findOne({comments: { $elemMatch: { userid: 1}}, 'title':"post one"});

有关详细信息,请参阅以下问题: