MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBドキュメントの値を1つだけインクリメントしますか?


単一の値のみを更新してMongoDBでインクリメントするには、update()とともに$incを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo698.insertOne({Score:78});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6d8a4551299a9f98c9398")
}
> db.demo698.insertOne({Score:56});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6d8a7551299a9f98c9399")
}
> db.demo698.insertOne({Score:65});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6d8aa551299a9f98c939a")
}
> db.demo698.insertOne({Score:88});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6d8b0551299a9f98c939b")
}

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo698.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5ea6d8a4551299a9f98c9398"), "Score" : 78 }
{ "_id" : ObjectId("5ea6d8a7551299a9f98c9399"), "Score" : 56 }
{ "_id" : ObjectId("5ea6d8aa551299a9f98c939a"), "Score" : 65 }
{ "_id" : ObjectId("5ea6d8b0551299a9f98c939b"), "Score" : 88 }

以下は、単一の値のみをインクリメントするクエリです-

> db.demo698.update({_id:ObjectId("5ea6d8b0551299a9f98c939b")},{$inc:{Score:12}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo698.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5ea6d8a4551299a9f98c9398"), "Score" : 78 }
{ "_id" : ObjectId("5ea6d8a7551299a9f98c9399"), "Score" : 56 }
{ "_id" : ObjectId("5ea6d8aa551299a9f98c939a"), "Score" : 65 }
{ "_id" : ObjectId("5ea6d8b0551299a9f98c939b"), "Score" : 100 }

  1. 日付を削除せずに、1つのMongoDBドキュメントのみを更新します

    1つのドキュメントのみを更新するには、updateOne()を使用して特定のデータを更新する必要があります。 updateOne()は、フィルターに基づいてコレクション内の単一のドキュメントを更新するために使用されます。 ドキュメントを使用してコレクションを作成しましょう- > db.demo495.insertOne({"FirstName":"Chris","Age":19});{    "acknowledged" : true,    "insert

  2. MongoDBで基準を指定するドキュメントを1つだけ取得しますか?

    これには、MongoDBでfindOne()を使用します。 findOne()は、コレクションで指定されたクエリ条件を満たす1つのドキュメントを返します。 ドキュメントを使用してコレクションを作成しましょう- > db.demo596.insertOne({_id:1,"FirstName":"John","LastName":"Smith"}); { "acknowledged" : true, "insertedId" : 1 } > db.demo596.