如果object属性更大,则MongoDb更新对象

时间:2017-12-01 17:45:04

标签: node.js mongodb

我是mongo的新手,可以使用此查询的帮助。

我的对象看起来像这样。

device = {
   stuff:'otherstuff',
   read: {
     moreStuff: 'stuff',
     timestamp: 'some date'
   }
}

或者

device = {
   stuff:'otherstuff',
}

如果读取不存在或者新时间戳大于当前的read.timestamp,我想编写一个更新device.read的查询。有没有办法更新这个?或者我需要预先掌握逻辑来确定时间戳是否更大?

感谢您的帮助,

1 个答案:

答案 0 :(得分:0)

使用您的变量并设置变量,但这是基本概念

db.collaction.update(
{
  $or:[
  read:{$exists: false},
  "read.timestamp":{$gt:timestamp}
  ]}
,{set:{"read.timestamp":timestamp}}
)