[英]UpdateMany in mongodb using value of other field
我在 mongodb 中有這個文件:
_id:“xxxx”,“時間戳”:ISODate(“2022-03-26T10:33:47.738Z”)
我想創建一個遷移,將時間戳復制到 timestamp2 字段。 像這樣的東西:
db.task.updateMany(
{ "timestamp2": { $exists: false } },
{ $set: { "timestamp2": $timestamp }}
)
因此,如果文檔 1 的時間戳為 2022-03-26T10:33:47.738Z,則其時間戳 2 將相同(2022-03-26T10:33:47.738Z)。 如果文檔 2 有 2021-03-26T10:33:47.738Z 作為時間戳,它的時間戳 2 將是相同的 (2021-03-26T10:33:47.738Z) 我該如何實現? 謝謝
這就是我最終使用的:
module.exports = {
async up(db, client) {
await db.collection('task').updateMany(
{ timestamp2: { $exists: false }},
[ { $set: { timestamp2: "$timestamp" } } ]
)
},
async down(db, client) {
// Not possible to rollback updateMany
}
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.