MongoDBの更新声明

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。 }、偽、偽)。

  

 

おすすめ

転載: www.cnblogs.com/Jokerguigui/p/11672392.html