Я новичок в Mongodb, и мне интересно, как ограничить результаты в групповом вызове (PHP). После некоторых исследований я обнаружил, что единственный способ, чтобы написать «редуктор»MongoDB - Ограничение внутри группы с уменьшением
Это то, что я в настоящее время
$reduce = "function (obj, prev) { ";
$reduce .= "if(prev.count >= 2){";
$reduce .= "prev.mailSubject = obj.mailSubject;";
$reduce .= "}";
$reduce .= "prev.count+=1;";
$reduce .="}";
$res = $this->db->forms->group(
array('formid' => true),
array('mailSubject' => ''),''),
$reduce
);
Кажется, что ничего не сбавляя, я до сих пор получил те же результаты, я не помещаю if. Что я делаю неправильно?
Я не уверен, действительно ли вы поняли понятие «группа» и/или цель функции уменьшения. Не могли бы вы объяснить, что именно вы пытаетесь сделать? – Philipp
Я пытаюсь выполнить следующий запрос sql: select * from forms group by formid limit 2, 100 – ianaz
Тогда функция уменьшения - это неправильный подход, потому что функция сокращения не знает, сколько документов уже было обработано. – Philipp