MongoDB中的组结果
我有一个像下面描述的收藏 应用以下过滤器时:MongoDB中的组结果,mongodb,Mongodb,我有一个像下面描述的收藏 应用以下过滤器时: db.getCollection("Marcaciones") .find( { uuid: "12345", fecha_registro: { $gte: ISODate("2019-06-20 00:00:00.000Z") }, fecha_registro: { $lte: ISODate("2019-06-25 23:59:59.999Z") } }, { fecha_reg
db.getCollection("Marcaciones")
.find(
{
uuid: "12345",
fecha_registro: { $gte: ISODate("2019-06-20 00:00:00.000Z") },
fecha_registro: { $lte: ISODate("2019-06-25 23:59:59.999Z") }
},
{ fecha_registro: 1, _id: 0 }
)
.sort({ fecha_registro: -1 });
但我不知道如何对日期和/或类似于MongoDB中的distinct的东西进行分组
我想得到这个结果:
{"fecha_registro": "2019-06-20"},
{"fecha_registro": "2019-06-21"},
{"fecha_registro": "2019-06-22"},
{"fecha_registro": "2019-06-24"},
{"fecha_registro": "2019-06-25"}
使用以下数据集
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-19 09:11:45.285Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-19 12:22:22.665Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-19 12:54:55.788Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "4", "fecha_registro": ISODate("2019-06-19 18:07:10.138Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-20 08:47:12.982Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-20 12:23:24.866Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-20 13:00:28.387Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "4", "fecha_registro": ISODate("2019-06-20 17:59:57.922Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-21 08:51:17.527Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-21 12:20:23.028Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-21 12:46:06.670Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-22 09:06:18.442Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-22 13:24:17.891Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-22 13:31:00.606Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "4", "fecha_registro": ISODate("2019-06-22 13:31:05.537Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-24 08:51:21.862Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-24 12:28:49.500Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-24 13:08:36.422Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "4", "fecha_registro": ISODate("2019-06-24 18:00:41.499Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-25 08:49:03.776Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-25 13:27:05.152Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-25 13:44:02.609Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-26 08:49:06.356Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-26 12:30:52.041Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "3", "fecha_registro": ISODate("2019-06-26 13:18:37.833Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "4", "fecha_registro": ISODate("2019-06-26 18:02:35.837Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "1", "fecha_registro": ISODate("2019-06-27 08:43:45.077Z") })
db.Marcaciones.insert({ "uuid": "12345", "tipo": "2", "fecha_registro": ISODate("2019-06-27 12:33:16.952Z") })
您需要使用
聚合数组
使用版本4.0.6 MongoDB
通过以上查询,我可以得到以下信息:
{"_id": "2019-06-20"},
{"_id": "2019-06-21"},
{"_id": "2019-06-22"},
{"_id": "2019-06-24"},
{"_id": "2019-06-25"}
重要部分包括:
如果希望最终结果中的名称是fecha\u registro
,而不是\u id
,则可以
添加
在聚合的末尾
注:您的预期数据错误“2019-06-23”
不应出现在结果中。由于您的收集数据中没有此类日期…Hi!我的回答对你有帮助吗?
{"_id": "2019-06-20"},
{"_id": "2019-06-21"},
{"_id": "2019-06-22"},
{"_id": "2019-06-24"},
{"_id": "2019-06-25"}
{ $project: { fecha_registro: "$_id", _id: 0 } }