我使用的是 MongoDB 3.6 版本。在我的一个集合中,我有两个字段,一个是 unix 时间戳,另一个是日期。在聚合管道中,我想计算这两个字段之间的差异。在 4.0 及以上版本中,mongo 提供了一些可以转换数据类型的函数,如 $toInt、$toLong 等。但这些功能在3.6版本中不可用。这可能吗?如果可以的话,该怎么做?
您可以简单地$减去 2 个日期。您将获得以毫秒为单位的日期差异。
db.collection.aggregate([ { "$addFields": { "dateDiff": { "$subtract": [ ISODate("2020-12-08"), "$date" ] } } } ])
这里有Mongo游乐场供大家参考