2012-06-29 35 views
0

如何在使用mapreduce函数时在php, mongodb中应用限制? 我想这在php中使用mapreduce函数限制?

$cmd=array(// codition array 
"mapreduce" => "user", 
"map" => $map, 
"reduce" => $reduce, 
"out" => array("inline" => 1), 
"limit"=>2 
); 

$db=connect(); 
$query = $db->command($cmd);// run command 

但它不工作它给2个documents.I不能在子文档中使用的限制。 如果我有100个子文档,然后我希望在子文档中分页,那么它会失败。是否可以对子文档应用限制?

回答

0

在您的查询中,您可以使用$ slice:http://www.mongodb.org/display/DOCS/Retrieving+a+Subset+of+Fields。但是,如果这就是你的要求,你将无法在你的MR内部对你的子系统进行分页。

我不确定你是通过什么方式“然后失败”。所以我不能在那里给出可靠的答案。

顺便说一下,限制只适用于根文件。子文档仅仅是您的根文档中的数组,而不是完全独立的表。