mongodb - Mongodb聚合没有返回正确的日期
问题描述
我正在尝试从 MongoDB(使用 PHP)返回结果,其中我有以下输出:用户名、探险次数、转录次数、上次转录日期
我使用的查询是
$collection->aggregate([
[
'$match' => [
'subject_projectId' => (int) $projectId
]
],
[
'$sort' => [
'classification_finished_at' => -1
]
],
[
'$group' => [
'_id' => '$user_name',
'transcriptionCount' => [
'$sum' => 1
],
'expedition' => [
'$addToSet' => '$subject_expeditionId'
],
'last_date' => [
'$first' => '$classification_finished_at'
]
]
],
[
'$project' => [
'_id' => 0,
'user_name' => '$_id',
'transcriptionCount' => 1,
'expeditionCount' => [
'$size' => '$expedition'
],
'last_date' => 1
]
]]);
除了最后一个日期,我得到了正确的回报。它没有给我用户进行转录的最后日期,而是给了我其他日期。不知道给出的日期是什么,我只知道某些用户有更晚的日期。想知道我做错了什么。
解决方案
推荐阅读
- sql - 允许插入重复项的合并语句
- python-3.x - Apache Airflow scheduler not running workers on its own
- c++ - 自制 Arduino 莫尔斯电码库在第一个字母后停止
- memory - 试图了解 Apache Arrow 的内存存储是如何工作的
- r - R ggplot2:绘制置信区间色带时出现奇怪的补丁
- c - C中的意外位移行为
- c++ - 无需重载的类型和 const 类型的通用函数
- visual-studio-code - “ANY_NODE_APP”在 Windows 10 上不是内部或外部命令、可运行程序或批处理文件
- sql - 有没有办法使用 SQL 将字符串转换为列名?
- python - 进度条 - 类型错误:“模块”对象不可调用