mongodb - mongo $sort $aggregate 在每次执行时得到不同的结果
问题描述
我正在执行聚合查询以获取每个文档的所有唯一名称。(名称可以重复,这没关系)。
问题是每次我执行查询时都会收到不同的结果。
集合示例:
{
"_id" : ObjectId("5dds82d99b912454cba84359"),
"name": "name1",
"creation_date: 2019-03-07T00:00:00.000Z
}
询问:
db.getCollection("collection_name").aggregate([
{
"$match": {
"creation_date": {
$gte: ISODate("2019-03-07T00:00:00.000Z"),
$lte: ISODate("2019-09-03T00:00:00.000Z"),
}
}
},
{
'$group': {
'_id': null, 'array': {'$addToSet': '$$ROOT.name'}
},
},
{'$sort': {'creation_date': 1, '_id':1}}
]);
我有几条创建日期完全相同的记录,因此,我也尝试按 _id 字段对结果进行排序,但问题仍然存在:/
知道为什么每次执行都会获得不同的结果吗?
解决方案
推荐阅读
- r - R - 绘制两个时间序列只显示第一个
- python - 设置 DEBUG 环境变量时,如何禁用 numba 调试日志记录?
- javascript - 如何使用变量加载 json 值?[JS]
- javascript - `npm list` 错误:`mainprocess 退出代码:1`
- c++ - 使用带有 ref 参数的成员函数创建线程时出现编译错误
- python - 'function' 对象没有属性 'load_data'
- vba - 如何更改 MailItem 的 HTML 正文中的字符集?
- database - Vertica:无法为 COPY 语句分配足够的内存(请求 536870912,允许 268435456)
- tensorflow - CNN的设计模型架构
- python - 在 python (pytest) 测试中使用资源文件