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

インデックス間で配列フィールドの明確な集計を取得する


インデックス間で配列フィールドを明確に集約するために、例を挙げて、いくつかのドキュメントを含むコレクションを作成しましょう。

以下は、ドキュメントを含むコレクションを作成するためのクエリです

> db.distinctAggregation.insertOne({"UserName":"Larry","UserPost":["Hi","Hello"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c98aefb330fd0aa0d2fe4c6")
}
> db.distinctAggregation.insertOne({"UserName":"Chris","UserPost":["Hi","Good Morning"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c98af0a330fd0aa0d2fe4c7")
}
> db.distinctAggregation.insertOne({"UserName":"Robert","UserPost":["Awesome"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c98af1e330fd0aa0d2fe4c8")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです

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

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

{
   "_id" : ObjectId("5c98aefb330fd0aa0d2fe4c6"),
   "UserName" : "Larry",
   "UserPost" : [
      "Hi",
      "Hello"
   ]
}
{
   "_id" : ObjectId("5c98af0a330fd0aa0d2fe4c7"),
   "UserName" : "Chris",
   "UserPost" : [
      "Hi",
      "Good Morning"
   ]
}
{
   "_id" : ObjectId("5c98af1e330fd0aa0d2fe4c8"),
   "UserName" : "Robert",
   "UserPost" : [
      "Awesome"
   ]
}

以下は、配列フィールドにインデックスを作成するためのクエリです

> db.distinctAggregation.ensureIndex({"UserPost":1});
{
   "createdCollectionAutomatically" : false,
   "numIndexesBefore" : 1,
   "numIndexesAfter" : 2,
   "ok" : 1
}

以下は、インデックス間で配列フィールドの個別の集計を取得するためのクエリです

> db.distinctAggregation.distinct("UserPost");

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

[ "Awesome", "Good Morning", "Hello", "Hi" ]

  1. 配列要素の集計で平均を取得するMongoDBクエリ?

    配列要素の平均を取得するには、$avgを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo584.insertOne({"Marks":[75,50,85,60,80]});{    "acknowledged" : true,    "insertedId" : ObjectId("5e91d827fd2d90c177b5bcc2") } find()メソッドを使用してコレクションからすべてのドキュメントを表示する- > db

  2. C++で配列内の個別の要素をカウントします

    反復要素を含む任意のサイズのソートされていない配列が与えられ、タスクは配列内の個別の要素の数を計算することです。 配列は、同じタイプの要素の固定サイズの順次コレクションを格納できる一種のデータ構造です。配列はデータのコレクションを格納するために使用されますが、配列を同じタイプの変数のコレクションと考える方が便利な場合がよくあります。 例 Input− int arr[] = {1, 1, 2, 3, 3, 4, 4} Output − count is 4 説明 −指定された配列には4つの異なる要素があり、それらは1、2、3、4ですが、反復要素が含まれているため、配