在MongoDB中,有以下幾種方法可以修改數據:
updateOne()
:用于更新集合中滿足指定條件的第一條文檔。如果沒有滿足條件的文檔,則不進行任何操作。db.collection.updateOne(
<filter>,
<update>,
{
upsert: <boolean>,
writeConcern: <document>
}
)
updateMany()
:用于更新集合中滿足指定條件的所有文檔。db.collection.updateMany(
<filter>,
<update>,
{
upsert: <boolean>,
writeConcern: <document>
}
)
replaceOne()
:用新文檔替換集合中滿足指定條件的第一條文檔。如果沒有滿足條件的文檔,則不進行任何操作。db.collection.replaceOne(
<filter>,
<replacement>,
{
upsert: <boolean>,
writeConcern: <document>
}
)
findOneAndUpdate()
:用于返回并更新集合中滿足指定條件的第一條文檔。db.collection.findOneAndUpdate(
<filter>,
<update>,
{
projection: <document>,
sort: <document>,
maxTimeMS: <number>,
upsert: <boolean>,
returnNewDocument: <boolean>,
collation: <document>,
arrayFilters: [ <filterdocument1>, ... ],
hint: <document|string>
}
)
findOneAndReplace()
:用新文檔替換集合中滿足指定條件的第一條文檔,并返回替換前的文檔。db.collection.findOneAndReplace(
<filter>,
<replacement>,
{
projection: <document>,
sort: <document>,
maxTimeMS: <number>,
upsert: <boolean>,
returnNewDocument: <boolean>,
collation: <document>,
hint: <document|string>
}
)
findOneAndDelete()
:刪除并返回集合中滿足指定條件的第一條文檔。db.collection.findOneAndDelete(
<filter>,
{
projection: <document>,
sort: <document>,
maxTimeMS: <number>,
collation: <document>,
hint: <document|string>
}
)
上述方法中,<filter>
參數用于指定篩選條件,<update>
參數用于指定要進行的修改操作,<replacement>
參數用于指定要替換的文檔。