我将mongodb与phpm一起使用,并且我想使用聚合
这是我直接在Mongo中查询
db.getCollection('whitelist').aggregate(
[
{
$match: {"whitelisted_email": false}
},{
$group:{
_id:null,
"users_id": {$addToSet:"$user_id"}
}
},{
$project:{
_id:0,
"users_id":1
}
}
]
)
结果
{ “ users_id”:[ 1.0, 2.0 ] }
在我的php脚本中,我的查询是:
$users = $collection->aggregate([
[
'$match' => ['whitelisted_email' => false]
],
[
'$group' => [
'_id' => null,
'users_id' => ['$addToSet' => '$users_id']]
],
[
'$project' => [
'_id' => 0,
'users_id' => 1,
]
]
]
);
foreach ($users as $user) {
var_dump(json_encode($user->getArrayCopy(), true));
}
我的结果是: '{“ users_id”:[]}'
为什么结果不同?数据库是一样的