本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
$dateTrunc
8.0 版的新增内容
弹性集群不支持。
Amazon DocumentDB 中的$dateTrunc聚合运算符将日期截断为指定单位。
参数
-
date:解析为日期或时间戳的日期表达式。 -
unit:一个字符串,它为子集表达式指定时间单位。支持的单位是year、quarter、month、week、day、hour、minute、second、和millisecond。
示例(MongoDB 外壳)
以下示例演示如何使用$dateTrunc运算符将日期截断为小时。
创建示例文档
db.events.insertMany([ { eventName: "Event 1", eventTime: ISODate("2025-04-01T12:15:00Z") }, { eventName: "Event 2", eventTime: ISODate("2025-08-15T14:33:22Z") }, ]);
查询示例
db.events.aggregate([ { $project: { eventName: 1, eventTime: 1, truncatedToHour: { $dateTrunc: { date: "$eventTime", unit: "hour" } } } } ]);
输出
[
{
_id: ObjectId('6924a258d66dcae121d29515'),
eventName: 'Event 1',
eventTime: ISODate('2025-04-01T12:15:00.000Z'),
truncatedToHour: ISODate('2025-04-01T12:00:00.000Z')
},
{
_id: ObjectId('6924a258d66dcae121d29516'),
eventName: 'Event 2',
eventTime: ISODate('2025-08-15T14:33:22.000Z'),
truncatedToHour: ISODate('2025-08-15T14:00:00.000Z')
}
]
代码示例
要查看使用该$dateTrunc命令的代码示例,请选择要使用的语言的选项卡: