Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb Mongo ODM重复搜索原则_Mongodb_Symfony_Zend Framework2_Doctrine - Fatal编程技术网

Mongodb Mongo ODM重复搜索原则

Mongodb Mongo ODM重复搜索原则,mongodb,symfony,zend-framework2,doctrine,Mongodb,Symfony,Zend Framework2,Doctrine,我目前有一个mongo shell命令,可以在邮件列表集合中运行重复搜索: var duplicates = []; db.mailing_entries.aggregate([ { $group: { _id: { full_name: "$full_name", business: "$business", address_line_1: "$address_line_1", postal_code: "$postal_code" }, dups: { $addTo

我目前有一个mongo shell命令,可以在邮件列表集合中运行重复搜索:

var duplicates = [];

db.mailing_entries.aggregate([
  { $group: { 
    _id: { full_name: "$full_name", business: "$business", address_line_1: "$address_line_1", postal_code: "$postal_code" }, 
    dups: { $addToSet: "$_id" },
    count: { $sum: 1 } 
  }}, 
  { $match: { 
    count: { $gt: 1 } 
  }}
])
.result          
.forEach(function(doc) {
doc.dups.shift();
doc.dups.forEach( function(dupId){ 
    duplicates.push(dupId);
    }
) 

});
printjson(duplicates); 
shell代码对我来说工作得很好,但是,经过大量搜索,我找不到使用map-reduce函数或任何其他方法正确转换为Doctrine Mongo ODM的方法

我目前正在使用与Zend Framework 2集成的Doctrine Mongo ODM模块


我到处找了,但都没找到

1.2版中引入的底层
条令/mongodb
包,虽然它们还没有编写文档,但您可以查看链接拉请求中的示例,并利用IDE的自动完成功能

我们的目标是允许将聚合结果水合到文档中,但该功能尚未准备就绪,目前您需要获得这样的生成器(假设
MailingEntry
是您的映射文档)

$builder = $documentManager->getDocumentCollection(MailingEntry::class)->createAggregationBuilder();