我正在尝试在更新查询中连接一个字符串值,但是找不到在Mongoose上执行此操作的方法。
这是批量写入查询列表上的updateOne查询
{
updateOne: {
filter: {
accountId: Participant.accountId,
region: Region
},
update: {
$inc: {
'accountData.analyzed': 1,
'accountData.w': someVariable,
// many more values...
},
$set: {
'accountData.theStringField': theStringField + " some text"
}
},
upsert: true,
setDefaultsOnInsert: true
}
}
当然,在$ set上的查询不起作用。我写那是为了演示我正在尝试做的事情。
基本上我想做的是,将“ accountData.theStringField”与我想要的文本(“某些文本”)连接起来。因此,如果该值为“这是”,则它将被更新为“ 这是一些文字” 。是否可以在不先获取文档的情况下执行此操作?
我不是要使用聚合来执行此操作,因此请不要将其标记为重复项,因为它不是。
答案 0 :(得分:0)
我认为这不会通过.update()方法起作用,但是可以使用$ concat运算符进行聚合: Append a string to the end of an existing field in MongoDB
然后可以用来更新现有对象。