mongo-> php,查询嵌入对象内部

时间:2013-06-19 18:28:07

标签: php mongodb

我有这个结构:

"_id": NumberInt(1),
"link_id": {
    "1000748": {
        "pi": NumberInt(34),
        "li": NumberInt(8)
    },
    "1002836": {
        "pi": NumberInt(21),
        "li": NumberInt(1002836)
    }
}

我想进行查询以仅选择带有'pi'=>的link_ids 34.我试过php $res = $collection->findOne(array("_id" => intval($_catids['categoryid']))array("linkid.$.pi" => intval(34))); 没有成功。有任何想法吗?很多!

1 个答案:

答案 0 :(得分:1)

首先,我建议将MongoId对象用于_id字段,其中有很多选项和很多有用的功能

但是没有回答这个问题,查询如下:

{
    "linked_id.pi": 34
}

然后你翻译成PHP它是

array(
    'linked_id.pi' => 34,
)

然后根据你想要的结果,你需要使用find或findOne