![](/img/trans.png)
[英]MongoDB, Mongoose results from one Find to search another collection
[英]mongoDB find from one collection and save in another collection
我想從我的用戶集合中找到一個用戶,然后將這個確切的用戶插入另一個具有相同架構的集合中。
這是我的實現:(控制器)
const user = await User.findOne({ _id: id });
if (user) {
const deletedUser = await DeletedUser({
...user,
});
deletedUser.save();
}
(架構)
const User = tazweedDBConnection.model('users', userSchema, 'users');
const DeletedUser = tazweedDBConnection.model(
'deleted-users',
userSchema,
'deleted-users'
);
module.exports = { User, DeletedUser };
它正在工作,但deleted-users
中的數據與user
中的數據不同。 我只獲得架構中的默認值。
從 mongoDB 4.2 版開始,您可以使用$merge
在一個查詢中執行此操作(對於舊版本使用$out
):
User.aggregate([
{$match: {_id: id}},
{$merge: {into: "newCollection"}}
])
請注意,響應是: Fetched 0 record(s) in 0ms
,因為沒有文檔返回。 而是將文檔插入到新集合中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.