我很难找到查询。
我在mongodb网格集中有两个文档:
{
"_id" : ObjectId("55b8ac2c1a80142e7f7b23cd"),
"metadata" : {
"filename" : "test2.xml",
"contentType" : "application/xml"
},
"data" : {
"type_file" : "test",
"vision_id" : "6987"
},
"filename" : "test2.xml",
"uploadDate" : ISODate("2015-07-29T10:34:20.991Z"),
"length" : NumberLong(9582),
"chunkSize" : NumberLong(261120),
"md5" : "ea40283994f451b357555e53d186ed1e"
}
{
"_id" : ObjectId("55b8ac2c1a80142e7f7b23cd"),
"metadata" : {
"filename" : "test.xml",
"contentType" : "application/xml"
},
"data" : {
"type_file" : "test",
"vision_id" : "1282"
},
"filename" : "test.xml",
"uploadDate" : ISODate("2015-07-29T10:34:20.991Z"),
"length" : NumberLong(9582),
"chunkSize" : NumberLong(261120),
"md5" : "ea40283994f451b357555e53d186ed1e"
}
现在我想创建一个查询文件,其中" filename" =" test.xml"标签" vision_id" =" 1282"。
现在我做了这样的搜索查询:
$query =
array('$and' =>
array(
array("filename" => "text.xml),
array("data" => array("vision_id" => "1282")),
),
);
$cursor = $gridFS->find($query)
如果我这样做,我就得不到结果:
当我删除行array("data" => array("vision_id" => "1282"))
时,我会收到最后一个文档。 (正如我预测的那样)。
有人能以正确的方式推动我在数据阵列中进行搜索吗?
亲切的问候,
Arjan Kroon
答案 0 :(得分:1)
我找到了解决方案。
$query =
array('$and' =>
array(
array("filename" => "text.xml"),
array("data.vision_id" => "1282"),
),
);