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

特定の数より大きいフィールド値を持つMongoDBドキュメントを照合し、それらをフェッチしますか?


一致させるには、MongoDBで$matchを使用します。特定の数値より大きい値の場合は、$gtを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo730.insertOne({"Name" : "Chris", "Marks" : 33 });
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eac54cd56e85a39df5f6339")
}
> db.demo730.insertOne({ "Name" : "David", "Marks" : 89});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eac54cd56e85a39df5f633a")
}
> db.demo730.insertOne({ "Name" : "Chris", "Marks" : 45 });
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eac54ce56e85a39df5f633b")
}

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

> db.demo730.find();

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

{ "_id" : ObjectId("5eac54cd56e85a39df5f6339"), "Name" : "Chris", "Marks" : 33 }
{ "_id" : ObjectId("5eac54cd56e85a39df5f633a"), "Name" : "David", "Marks" : 89 }
{ "_id" : ObjectId("5eac54ce56e85a39df5f633b"), "Name" : "Chris", "Marks" : 45 }

以下は、特定の数より大きいフィールド値を持つMongoDBドキュメントを照合し、それらをフェッチするためのクエリです-

> db.demo730.aggregate([
...    { $sort: { _id: -1 } },
...    { $limit: 3 },
...    {$match: { $or: [ {"Name": "Chris", "Marks": { "$gt": 40 }}, {"Name": "David"} ]}}
... ])

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

{ "_id" : ObjectId("5eac54ce56e85a39df5f633b"), "Name" : "Chris", "Marks" : 45 }
{ "_id" : ObjectId("5eac54cd56e85a39df5f633a"), "Name" : "David", "Marks" : 89 }

  1. MongoDBで配列をクエリして、特定の値をフェッチします

    配列から特定の値をフェッチするには、$ projectとともにaggregate()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo761.insertOne( ...    { ...       "details": [ ...          { ...             "student": { ...     &nb

  2. 数値とその桁の合計の差がC++の特定の値より大きい数値をカウントします

    D. 1からNまでの数値をトラバースすることでこれを行い、各数値について、whileループを使用してその桁の合計を計算します。数値と計算された桁の合計にDより大きい差があるかどうかを確認します。 例を挙げて理解しましょう。 入力 N=15 D=5 出力 Numbers such that difference b/w no. and its digit sum greater than value D: 6 説明 Numbers 10, 11, 12, 13, 14, 15 satisfy the condition. ( 10-1, 11-2, 12-3, 13-4, 14-5