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

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


ドキュメントフィールドの値から値を減算するには、MongoDBaggregate()で$subtractを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo599.insertOne({"TotalPrice":250,"DiscountPrice":35});{
   "acknowledged" : true, "insertedId" : ObjectId("5e948192f5f1e70e134e2696")
}
> db.demo599.insertOne({"TotalPrice":400,"DiscountPrice":10});{
   "acknowledged" : true, "insertedId" : ObjectId("5e948199f5f1e70e134e2697")
}
> db.demo599.insertOne({"TotalPrice":1550,"DiscountPrice":50});{
   "acknowledged" : true, "insertedId" : ObjectId("5e9481a0f5f1e70e134e2698")
}

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

> db.demo599.find();

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

{ "_id" : ObjectId("5e948192f5f1e70e134e2696"), "TotalPrice" : 250, "DiscountPrice" : 35 }
{ "_id" : ObjectId("5e948199f5f1e70e134e2697"), "TotalPrice" : 400, "DiscountPrice" : 10 }
{ "_id" : ObjectId("5e9481a0f5f1e70e134e2698"), "TotalPrice" : 1550, "DiscountPrice" : 50 }

以下は、ドキュメントフィールド値から値を減算するクエリです-

> db.demo599.aggregate( [ { $project: {ActualPrice: { $subtract: [ "$TotalPrice", "$DiscountPrice" ] } } } ] )

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

{ "_id" : ObjectId("5e948192f5f1e70e134e2696"), "ActualPrice" : 215 }
{ "_id" : ObjectId("5e948199f5f1e70e134e2697"), "ActualPrice" : 390 }
{ "_id" : ObjectId("5e9481a0f5f1e70e134e2698"), "ActualPrice" : 1500 }

  1. MongoDBコレクションから一意の値を取得するにはどうすればよいですか?

    一意の値を取得して重複を無視するには、MongoDBでdistinct()を使用します。個別の()は、単一のコレクション全体で指定されたフィールドの個別の値を検索し、結果を配列で返します。 ドキュメントを使用してコレクションを作成しましょう- > db.demo704.insertOne({"LanguageCode":"hi"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ea6ee

  2. MongoDBドキュメントから特定の値をフィルタリングする

    特定の値をフィルタリングするには、MongoDBで$filterを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo751.insertOne( ...    { ...       _id: 101, ...       details: [ ...          { Name: "Robert", id:110,Age:21}, ...         &nb