mongodb-$ dateFromString支持多种格式

时间:2018-12-05 01:18:13

标签: mongodb mongoose

我在mongodb中有一个字符串字段,应将其转换为日期字段。 字符串的格式如下:

  2014 - Only year, default month and day are 01 and 01, so it should be converted to date '2014-01-01'
  2014-01 - With year and month, which should also be converted to date '2014-01-01'
  2014-01-01 - Full date
使用以下语法的

$dateFromString似乎无效:

$dateFromString: {
  dateString: '$order.date',
  format: '%Y-%m-%d',
}

如何使$dateFromString支持多种格式?

1 个答案:

答案 0 :(得分:0)

您可以做的是通过$addFields添加一个新字段,然后使用$cond管道运算符匹配每个日期长度(通过{ {3}})并连接其余部分(通过$strLenCP)。然后,由于您的所有日期字段现在都将与格式if匹配,因此它应该可以正常工作……

%Y-%m-%d

您可以$concat