MongoDB为每个用户提供最后N个密码

时间:2018-06-04 14:37:19

标签: mongodb

我有一个包含密码历史记录的集合。每个元素都像

{ username: "Fooo", createdAt: "2018-06-04" }

我想要的是密码历史记录中的最后N个条目,对于每个用户,并将它们更新到今天。 我还有一个包含所有用户名的集合,所以我尝试过的就是

db.getCollection('users')
   .find({})
   .forEach(function(u){
      db.getCollection('passwordHistory')
      .find({username:u})
      .sort({createdAt:-1})
      .limit(1)
      .forEach(function(p){
        p.createdAt = new Date("2018-06-04T17:00:00Z")
        p.save()
      })
})

但它返回了Script executed successfully, but there are no results to show

使用mongodb 3.2.2

1 个答案:

答案 0 :(得分:0)

正如第一条评论中所述,我正在find({username: u}) find({username: u.username}) {}进行docker.elastic.co/beats/filebeat:6.1.2