yii2:mongodb aggregate子句返回内部服务器错误
我的数据库是mongodb。我使用以下查询和Yii2进行分组yii2:mongodb aggregate子句返回内部服务器错误,mongodb,yii2,yii2-advanced-app,Mongodb,Yii2,Yii2 Advanced App,我的数据库是mongodb。我使用以下查询和Yii2进行分组 $query->select([]) ->from('networklog') ->aggregate([ [ '$group' => [ '_id' => '$userid', 'date' => [ '$max' => '$datetime' ] ]
$query->select([])
->from('networklog')
->aggregate([
[
'$group' => [
'_id' => '$userid', 'date' => [ '$max' => '$datetime' ]
]
],
[ '$sort' => [ 'date'=>'1' ]],
]);
$rows = $query->all();
在mongodb中,我使用了以下查询,它可以正常工作
db.networklog.aggregate([
{ $group: { _id: "$userid", date: { $max: "$datetime" } } },
{ $sort: { date:1 } },
])
如何在yii2中编写相同的查询以获得所需的结果?yii2使用Mongo聚合的语法如下:
$collection = Yii::$app->mongodb->getCollection('your_mongo_collection');
$data = $collection->aggregate(
[
'$match' => [
'name' => $name,
]
], [
'$group' => [
'_id' => '_id',
'count' => [
'$sum' => 1
]
]
]
);
Yi2使用Mongo聚合的语法如下:
$collection = Yii::$app->mongodb->getCollection('your_mongo_collection');
$data = $collection->aggregate(
[
'$match' => [
'name' => $name,
]
], [
'$group' => [
'_id' => '_id',
'count' => [
'$sum' => 1
]
]
]
);