MongoDB日期运算符,方法和变量列表

发布于

本文包含日期运算符、方法和变量的列表,您可以在 MongoDB 中使用日期时使用这些运算符、方法和变量。

字段更新运算符

算子 描述
[$currentDate](https://database.guide/mongodb-currentdate/ "MongoDB $currentDate") 将字段的值设置为当前日期。它可以设置为日期或时间戳类型。默认值为日期。

日期表达式运算符(聚合管道)

以下聚合管道运算符返回日期对象或日期对象的组件。这些可用于构造用于聚合管道阶段的表达式。

算子 描述
[$dateFromParts](https://database.guide/mongodb-datefromparts/ "MongoDB $dateFromParts") 从日期的组成部分构造 BSON Date 对象。
[$dateFromString](https://database.guide/mongodb-datefromstring/ "MongoDB $dateFromString") 将日期/时间字符串转换为日期对象。
[$dateToParts](https://database.guide/mongodb-datetoparts/ "MongoDB $dateToParts") 返回包含日期组成部分的文档。
[$dateToString](https://database.guide/mongodb-datetostring/ "MongoDB $dateToString") 以字符串形式返回日期。
$dayOfMonth 以 和 之间的数字形式返回给定日期的月中的某天。1``31
$dayOfWeek 以介于 (星期日) 和 (星期六) 之间的数字形式返回给定日期的星期几。1``7
$dayOfYear 以 和 (闰年) 之间的数字形式返回给定日期的日期。1``366
$hour 以 和 之间的数字形式返回给定日期的小时数。0``23
$isoDayOfWeek 以 ISO 8601 格式返回给定日期的工作日编号,范围从 (星期一) 到 (星期日)。1``7
$isoWeek 以 ISO 8601 格式返回给定日期的周数,范围从 到 。1``53
$isoWeekYear 以 ISO 8601 格式返回给定日期的年号。
$millisecond 以 和 之间的数字形式返回给定日期的毫秒数。0``999
$minute 以 和 之间的数字形式返回给定日期的分钟数。0``59
$month 以介于 (1 月) 和 (12 月) 之间的数字形式返回给定日期的月份。1``12
$second 以 和 (闰秒) 之间的数字形式返回给定日期的秒数。0``60
$toDate 将值转换为日期。
$week 以介于(一年中第一个星期日之前的部分周)和(闰年)之间的数字形式返回给定日期的周数。0``53
$year 以数字形式返回给定日期的年份(例如 )。2021

方法

以下方法可用于返回日期/时间字符串或 Date 对象。

方法 描述
[Date()](https://database.guide/mongodb-date-method/ "MongoDB Date() Method") 返回日期/时间字符串或 Date 对象。您可以提供日期。如果不这样做,它将返回当前日期/时间。

系统变量

以下系统变量可用于在使用聚合管道时返回日期时间或时间戳值。

方法 描述
[NOW](https://database.guide/mongodb-now-aggregation-variable/ "MongoDB NOW Aggregation Variable") 返回当前日期时间值。此变量是在MongoDB版本4.2中引入的。
CLUSTER_TIME 返回当前时间戳值。仅在副本集和分片集群上可用。此变量是在MongoDB版本4.2中引入的。