我正在尝试从包含 MongoDb 中 DateTime格式的日期的文档中查找即将到来的生日,我找到了mongo查询。希望以 Symfony 聚合查询格式
进行查询此mongo查询返回我需要的结果。
db.document.aggregate([{"$redact": {"$cond": [{"$and": [ { "$gte": [ { "$month": "$date_of_birth" }, 6 ] },{ "$lte": [ { "$month": "$date_of_birth" }, 7 ] },{ "$gte": [ { "$dayOfMonth": "$date_of_wedding" }, 1 ] },{ "$lte": [ { "$dayOfMonth": "$date_of_birth" }, 31 ] }]},"$$KEEP","$$PRUNE"]}}]);
php代码
$builder=$dm->createAggregationBuilder('AppBundle:Document');
$builder->redact()->cond($builder->expr()->gte(['$month', 'date_of_wedding'], 6),'$$KEEP', '$$PRUNE');
$result = $builder->execute()->toArray();
需要的O / P:- 需要即将生日的人