MongoDBのドキュメントが更新されます
MongoDBはupdate()を使用して文書のコレクションを更新する()メソッドを保存します。 アプリケーションとの二つの機能の違いを詳しく見てみましょう。
update()メソッド
update()メソッドは、既存のドキュメントを更新するために使用されます。 構文は次のとおりです。
db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } )
パラメータ説明:
- 問合せ:SQL更新クエリ内側後に類似更新クエリ基準、。
- 更新:更新オブジェクトと(例えば$、$株式会社...など)の新しい演算子などのいくつかは、また戻ってSQL更新クエリ内の集合として理解することができます
- アップサート:オプション、この引数を意味するには、レコードの更新がない場合、挿入する場合はtrue objNewを、挿入され、デフォルトが挿入されていない、falseであることです。
- マルチ:オプション、MongoDBのデフォルトは、この引数は、すべての更新を確認する多くのレコードを出した条件に応じて、trueの場合のみ、最初のレコードを更新するために見つけるために、falseです。
- writeConcern:任意のレベルの例外がスローされます。
例
当社は、以下のデータ収集COLを挿入します。
>db.col.insert({ title: 'MongoDB 教程', description: 'MongoDB 是一个 Nosql 数据库', by: '本教程', url: 'http://www.w3big.com', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 })
その後、我々はupdate()メソッド(タイトル)でタイトルを更新する必要があります。
>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) # 输出信息 > db.col.find().pretty() { "_id" : ObjectId("56064f89ade2f21f36b03136"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "本教程", "url" : "http://www.w3big.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 } >
あなたは、元の「MongoDBのチュートリアル "Updateからタイトル(タイトルを)見ることができる「MongoDBの。」
あなたが同じドキュメントを編集したい場合は、上記の文は、最初に見つかったドキュメントを変更し、より多くの、あなたがtrueにマルチパラメータを設定する必要があります。
>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})
()メソッドを保存
既存のドキュメントを交換するために文書を渡すことによって、()メソッドを保存します。 構文は次のとおりです。
db.collection.save( <document>, { writeConcern: <document> } )
パラメータ説明:
- 文書:文書データ。
- writeConcern:任意のレベルの例外がスローされます。
例
:私たちは56064f89ade2f21f36b03136文書データとして_idを交換し、次の例
>db.col.save({ "_id" : ObjectId("56064f89ade2f21f36b03136"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "w3big", "url" : "http://www.w3big.com", "tags" : [ "mongodb", "NoSQL" ], "likes" : 110 })
交換が成功した後、我々は()検索により、交換後にデータを表示するために命令することができます
>db.col.find().pretty() { "_id" : ObjectId("56064f89ade2f21f36b03136"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "w3big", "url" : "http://www.w3big.com", "tags" : [ "mongodb", "NoSQL" ], "likes" : 110 } >
より多くの例
最初のレコードだけを更新します。
db.col.update({ "数":{$はGT:1}}、{$セット:{ "TEST2": "OK"}});
すべてを更新します。
db.col.update({ "数":{$はGT:3}}、{$セット:{ "TEST2": "OK"}}、偽、真)。
最初の追加:
db.col.update({ "数":{$のGT:4}}、{$セット:{ "TEST5": "OK"}}、真、偽)。
すべての追加を追加します。
db.col.update({ "数":{$のGT:5}}、{$セット:{ "TEST5": "OK"}}、真の、真の);
すべてを更新します。
db.col.update({ "数":{$のGT:15}}、{$株式会社:{ "数":1}}、偽、真)。
最初のレコードだけを更新します。
db.col.update({ "数":{$のGT:10}}、{$株式会社:{ "数":1}}、偽、偽)。