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

MongoDBのプロジェクションを使用して、ネストされたドキュメントから1つのフィールドを除くすべてを削除します


含めたくないフィールドを0に設定します。これにより、find()の使用中に残りの値が表示されます。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.demo237.insertOne({
...   _id:101,
...   Product: {
...      description1: {id:1001 },
...      description2: {Name:"Product-1" },
...      description3: {Price:550 }
...   }
...}
...);
{ "acknowledged" : true, "insertedId" : 101 }

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

> db.demo237.find().pretty();

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

{
   "_id" : 101,
   "Product" : {
      "description1" : {
         "id" : 1001
      },
      "description2" : {
         "Name" : "Product-1"
      },
      "description3" : {
         "Price" : 550
      }
   }
}

以下は、投影を介してネストされたドキュメントから1つのフィールドを除くすべてを削除するクエリです-

> db.demo237.find({}, { "Product.description1": 0, "Product.description3": 0 });

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

{ "_id" : 101, "Product" : { "description2" : { "Name" : "Product-1" } } }

  1. ドキュメントからサブドキュメントを削除するMongoDBクエリ?

    ドキュメントからサブドキュメントを削除するには、update()とともに$pullを使用します。まず、ドキュメントを使用してコレクションを作成しましょう- > db.demo538.insertOne( ... { ...    id:101, ...    "details": ...    { ...       anotherDetails: ...       [ ...          {

  2. MongoDBのドキュメントフィールド値から値(TotalPrice – Discount)を差し引く方法は?

    ドキュメントフィールドの値から値を減算するには、MongoDBaggregate()で$subtractを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo599.insertOne({"TotalPrice":250,"DiscountPrice":35});{    "acknowledged" : true, "insertedId" : ObjectId("5e948192f5f1e70e134e2696") } > db