首页 > 解决方案 > 如果现有文档的时间戳早于预设时间,则插入 mongo 文档 - 使用 upsert

问题描述

如果更新时间不超过现在 1 分钟,我需要更新现有文档。我有以下查询,但无论如何它仍然会继续更新现有文档。我该如何解决这种行为?

threats.upsert({
                threatType: threatLevel,
                username: userOrDeviceName,

                "misc.updatedTime": {$lt: new Date(new Date() - 60000)}
}, {
                $set: {
                    'misc.updatedTime': new Date(),
                    'misc.updatedBy': 'system',

                },
                $addToSet: {
                    serverAddr: { $each: destinations }
                },
                $inc: {
                    flowCount: destinations.length
                },
                $setOnInsert: {
                    threatState: "open",
                    'misc.createdTime': new Date(),
                    'misc.createdBy': 'system',

                }
            }

标签: mongodbmongodb-queryupsert

解决方案


推荐阅读