请告诉我如何满足以下条件 - 如果 info.startDate 字段中的时间不等于 00 小时,则将日期(2021-05-27)提前 1 天,将时间设置为 00:00: 00.000Z。我试图通过 Mongock 笨拙地完成它,获取集合的所有元素并通过 LocalDateTime 进行检查,但是我的堆溢出,这是合乎逻辑的,因为集合很大。我如何通过 Mongock 或至少手动请求 MongoDB 来做到这一点。到目前为止,我只写了这个:
db.getSiblingDB("ervk_core").getCollection("supervision").updateMany(
{},
[
{
"$set": {
"info.startDate": {
"$cond": {
if: {
$eq: [
"$info.startDate",
(there should be a condition at midnight)
]
},
then: (here the day should be added to full and the time should be set to midnight)
}
}
}
}
])
我想使用 dateToString 按小时进行部分搜索,但据我了解,此功能只能在聚合中使用。
我会很感激你的帮助:)