【发布时间】:2021-06-25 03:05:30
【问题描述】:
"pmsStatus": [
{
status: 0,
fromTimeStamp: "12:40:50",
reason: "no crane",
toTimeStamp: "13:40:50"
},
{
status: 1,
fromTimeStamp: "13:40:50",
toTimeStamp: "14:40:50"
},
{
status: 0,
fromTimeStamp: "14:40:50",
toTimeStamp: "15:40:50",
reason: "breakfast",
}
]
在中,将其视为 mongodb 集合。我需要对此进行 findOneAndUpdate 操作。地位不一样,但地位应该不同。如果我们得到相同的状态意味着,它不应该执行任何更新操作。如果状态与以前不同,则表示它应该执行更新操作。如果我们要存储到集合中的状态是 1 并且对象的前一个最后一个元素的状态是 0,那么 toTimeStamp 应该加上当前时间到最后一个对象。并且对于新存储的对象的状态为 0 并且 fromTimeStamp 应该加上当前时间(即)最后一个元素的 toTeStamp 和当前元素的 FromTimeStamp 总是相同的
我的代码
pmsStatus.findOneAndUpdate(
{_id}
, {
$push: {
dataP
}
})
我知道上面的代码不正确,但请帮助我。我是 mongodb 的初学者。谢谢
【问题讨论】:
标签: arrays mongodb mongoose mongodb-query