MongoDBは使用して アップデートを() と )(保存 文書のコレクションを更新する方法を:
update()メソッド:
update()メソッドは、既存のドキュメントを更新するために使用されます。構文は次のとおりです。
db.collection.update( <照会>、 <更新>、 { UPSERT <ブール>、 マルチ:<ブール>、 writeConcern:<文書> } )
パラメータ:
- クエリ :クエリの更新、SQLのUPDATEクエリ内の背に似ています。
- 更新 :更新オブジェクトと新しい演算子(例えば、$、$株式会社です...)などのいくつかは、SQL更新クエリの背後にあるセットとして理解することができます。
- アップサートは :また、このパラメータは、レコードが挿入された真objNewを挿入するかどうか、アップデートに存在しない場合、デフォルトではない(挿入に相当)を挿入、虚偽である、ということを意味しています。
- マルチ :このパラメータは条件がすべての更新をチェックするために多くのレコードを置くによると、真であればオプション、MongoDBのデフォルトでは、唯一見つかった最初のレコードを更新し、falseです。
- writeConcern :オプション、スローレベルの例外。
例
私たちは、COLに設定された次のデータを挿入します。
> db.col.insert({ タイトル: 'チュートリアルMongoDBの' 概要: 'のMongoDBはデータベースのNoSQLは' によって: '初心者チュートリアル'は、 URL: 'http://www.runoob.com'、 タグ:[ ' MongoDBは''データベース''のNoSQL「]は、 好き:100 })
その後、我々はupdate()メソッド(タイトル)でタイトルを更新する必要があります。
> db.col.update({ 'タイトル': 'のMongoDB教程'}、{$セット:{ 'タイトル': 'のMongoDB'}}) WriteResult({ "nMatched":1、 "nUpserted":0、「nModified ":1})#输出信息 > db.col.find()かなり() { "_id":のObjectId(" 56064f89ade2f21f36b03136" )、 "タイトル": "のMongoDB"、 "説明":「MongoDBの是一个NOSQL数据库」、 "によって": "菜鸟教程"、 "URL": "http://www.runoob.com"、 "タグ":[ "MongoDBの"、 "データベース"、 "NoSQLの" ]、 "好き":100 } >
私たちは、元の「MongoDBのチュートリアル」Updateからタイトル(タイトル)を見ることができる「MongoDBの。」
あなたが同じドキュメントを変更したい場合は、上記の文では唯一、最初に見つかったドキュメントを変更し、より多くの、あなたは真のマルチパラメータを設定する必要があります。
> db.col.update({ 'タイトル': 'のMongoDB教程'}、{$セット:{ 'タイトル': 'のMongoDB'}}、{マルチ:真})
()メソッドを保存
入ってくる文書で既存のドキュメントを置き換えるために()メソッドを保存します。構文は次のとおりです。
db.collection.save( <文書>、 { writeConcern:<文書> } )
パラメータ:
- ドキュメント :文書データ。
- writeConcern :オプション、スローレベルの例外。
例
我々はの56064f89ade2f21f36b03136として文書データ_idを交換する例を示します。
> db.col.save({ "_id":のObjectId( "56064f89ade2f21f36b03136")、 "タイトル": "のMongoDB"、 "説明": "MongoDBの是一个NOSQL数据库"、 "により": "Runoob"、 "URL" : "http://www.runoob.com"は、 "タグ": "MongoDBの"、 "のNoSQL" ]、 "好き":110 })
交換が成功した後、我々は()コマンドは、findを置き換えることで、データを表示するには、することができます
> db.col.find()かなり() { "_id":のObjectId( "56064f89ade2f21f36b03136")、 "タイトル": "のMongoDB"、 "記述"、 "MongoDBの是一个NOSQL数据库" "による":「Runoob 」、 "URL": "http://www.runoob.com"、 "タグ": "MongoDBは"、 "のNoSQLは" ]、 ""好き:110 } >
より多くの例
最初のレコード更新: db.col.update({ "COUNT":{$のGT :. 1}}、{$のSET:{ "TEST2": "OK"}}); 全更新: db.col.update ({ "カウント":{$ GT:3}、{$セット:{ "TEST2": "OK"}}、FALSE、TRUE); 最初の追加: db.col.update({ "COUNT" :{$はGT:4}} 、{$セット:{ "TEST5": "OK"}}、TRUE、FALSE); すべてのリストに追加追加: db.col.update({ "COUNT":{$のGT :. 5 }}、{$セット:{ "TEST5": "OK"}}、真、TRUE); 全更新: db.col.update({ "COUNT":{$のGT:15}}、{$ incがあります:{ "カウント":1}}、 FALSE、TRUE); 最初のレコードを更新: db.col.update({ "COUNT":{$のGT:10}}、{$ INCがある:{ "COUNT":} 1。 }、偽、偽)。