<< Click to Display Table of Contents >> 日期时间函数 |
日期函数语法表:
函数 |
语法 |
说明 |
举例 |
---|---|---|---|
dateFromParts |
{$dateFromParts : { 'year': <year>, 'month': <month>, 'day': <day>, 'hour': <hour>, 'minute': <minute>, 'second':<second>, 'millisecond': <ms>, 'timezone': <tzExpression>} } |
给定日期的组成属性,构造并返回Date对象 |
例如 :
{ $ dateFromParts : { 'year' : 2017 , 'month' : 14 , 'day' : 1 , 'hour' : 12 } } |
dateFromString |
{ $dateFromString: {dateString: <dateStringExpression>, format: <formatStringExpression>, timezone: <tzExpression>, onError: <onErrorExpression>, onNull:<onNullExpression>} } |
将日期/时间字符串转换为日期对象 |
例如 : { $dateFromString: { dateString: "15-06-2018", format: "%d-%m-%Y"} } |
dateToParts |
{$dateToParts: {'date' : <dateExpression>, 'timezone':<timezone>, 'iso8601' : <boolean>} } |
返回一个文档,该文档包含给定BSON日期值的组成部分作为单个属性。返回的属性year,month,day,hour,minute,second 和millisecond |
例如 : { $dateToParts: { date: "$date", timezone: "America/New_York" } } |
dateToString |
{ $dateToString: { date:<dateExpression>, format:<formatString>, timezone:<tzExpression>, onNull:<expression> } } |
根据用户指定的格式将日期对象转换为字符串 |
例如 :
{ $dateToString: { format: "%Y-%m-%d", date: ISODate("2014-01-01T08:15:39.736Z") } } |
dayOfMonth |
{ $dayOfMonth: <dateExpression> } |
以1到31之间的数字返回日期的月份 |
例如 :
{ $dayOfMonth: new Date("2016-01-01") } |
dayOfWeek |
{ $dayOfWeek: <dateExpression> } |
以1(星期日)至7(星期六)之间的数字返回日期的星期几 |
例如 : { $dayOfWeek: new Date("2016-01-01") } |
dayOfYear |
{ $dayOfYear: <dateExpression> } |
以1到366之间的数字返回日期的一年中的某天 |
例如 : { $dayOfYear: new Date("2016-01-01") } |
hour |
{ $hour: <dateExpression> } |
以0到23之间的数字返回日期的小时部分 |
例如 : { $hour: new Date("2016-01-01T12:00:00Z") } |
isoDayOfWeek |
{ $isoDayOfWeek: <dateExpression> } |
以ISO 8601格式返回工作日编号,范围从 1(星期一)到7(星期日) |
例如 : { $isoDayOfWeek: new Date("2016-01-01") } |
isoWeek |
{ $isoWeek: <dateExpression> } |
以ISO 8601格式返回星期数,范围从1到 53。星期数字从1包含一年中第一个星期四的星期(星期一至星期日)开始 |
例如 : { $isoWeek: { date: new Date("Jan 4, 2016") } } |
isoWeekYear |
{ $isoWeekYear: <dateExpression> } |
以ISO 8601格式返回年份。年份从第1周的星期一开始,到最后一周的星期日结束 |
例如 : { $isoWeek: { $isoWeekYear: new Date("2015-05-26") } |
millisecond |
{ $millisecond: <dateExpression> } |
以0到999之间的整数形式返回日期的毫秒部分 |
例如 : { $millisecond: ISODate("2014-01-01T08:15:39.736Z") } |
minute |
{ $minute: <dateExpression> } |
以0到59之间的数字返回日期的分钟部分 |
例如 : { $minute: new Date("2016-01-01T12:01:00Z") } |
month |
{ $month: <dateExpression> } |
以1到12之间的数字返回日期的月份 |
例如 : { $month: { date: new Date("Nov 7, 2003") } } |
second |
{ $second: <dateExpression> } |
以0到59之间的数字返回日期的第二部分,但可以为60以表示leap秒 |
例如 : { $second: new Date("2012-11-06T00:14:20") } |
week |
{ $week: <dateExpression> } |
以0到53之间的数字返回日期的一年中的星期 |
例如 : { $week: { date: new Date("2016-01-04") } } |
year |
{ $year: <dateExpression> } |
返回日期的年份部分 |
例如 : { $year: new Date("2016-01-01") } |