【发布时间】:2021-08-06 06:42:38
【问题描述】:
我想使用聚合方法进行查询并通过值修改我的数据库,我尝试使用 $set 但我的数据库没有被修改。
这是我的查询方式:
var filter = req.body.filter
var search = [ { $match: filter }, { $set: {item: "2"} }, { $sample: { size: 1 } }]
const result = await dataModel.aggregate(search)
我知道还有 findOneAndUpdate 但我想保持聚合,因为我也想在我的管道中使用 $project
提前致谢!
【问题讨论】:
-
我已经搜索过了,但我找不到任何允许您同时检索和修改值的管道
-
转换数据(更新和删除)是可以实现聚合查询允许的基本功能(除了其他功能之外)。我很惊讶。
-
我尝试使用 $set 和 $rootReplace 但它们都不允许更改 BDD 中的值。我现在唯一的方法是聚合()然后是 findOneAndUpdate ...
标签: mongodb mongoose mongodb-query