如何在模式更改之后从mongo获取旧logging

我有一个现有的模式

exports.OldCollectionSchema= new Schema({ Id: { type: Schema.ObjectId }, parentId: { type: Schema.ObjectId }, userId: { type : String }, userName: { type : String }) 

现在,我通过添加一个新的字段type来减less在两种情况下使用上述集合

types将是情景a或情景b

所以我想获取旧的logging+ type =“场景a”,并显示在一个页面

这怎么可能 ?

我相信mongoose有一个__v字段表示版本,但我不是mongoose专家,所以我只会粘贴你可以做的简单的哈希查询:

 db.col.find({type: {$exists: false, $in: ['a']}}); 

这将基本上说: “获取他们还没有一个场景(基本上是这个模式之前的那些)的所有logging,并将它们与具有types”a“的那些相结合

编辑

其实更好的方法就是在这里使用null

 db.col.find({type: {$in: ['a', null]}});