Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 使用$(更新)更新许多_Mongodb - Fatal编程技术网

Mongodb 使用$(更新)更新许多

Mongodb 使用$(更新)更新许多,mongodb,Mongodb,当我尝试对此执行updateMany时,它会在$set大括号上抛出语法错误 mongo 4.2.8版不可能吗?您得到的确切错误是什么?updateworksupdateMany最后抛出了一行意外的大括号。@Gibbs在$set操作符之前从更新查询中删除[],它不是一个有效的更新对象4.2.8您的mongo shell版本?否则,请将mongo升级至最新版本。某些版本可能不支持.updateMany的更新管道,您可以使用.update选项multi:trueinstead@KunalMukherj

当我尝试对此执行
updateMany
时,它会在
$set
大括号上抛出语法错误


mongo 4.2.8版不可能吗?

您得到的确切错误是什么?
update
works
updateMany
最后抛出了一行意外的大括号。@Gibbs在
$set
操作符之前从更新查询中删除
[]
,它不是一个有效的更新对象
4.2.8
您的mongo shell版本?否则,请将
mongo
升级至最新版本。某些版本可能不支持.updateMany的更新管道,您可以使用.update选项
multi:true
instead@KunalMukherjee这对我使用的版本完全有效。
db.getCollection('test').updateMany(
    {}, //match all
    [{
        $set: {
            players: {
                $concatArrays: [
                    [], //Creating new array for all the documents
                    [{ //Adding these values
                        "player_name": "$player_name",
                        "book_id": new ObjectId()
                    }]
                ]
            }
        }
    }]
)