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

MongoDBでソートされたデータを使用して個別の値を取得しますか?


以下は、MongoDBでソートされたデータを使用して個別の値を取得するためのクエリです

db.yourCollectionName.distinct("yourFieldName").sort();

まず、ドキュメントを使用してコレクションを作成しましょう

>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":10,"StudentName":"John","StudentAge":23});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e3315e86fd1496b38c3")
}
>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":20,"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e3e15e86fd1496b38c4")
}
>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":10,"StudentName":"John","StudentAge":23});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e4415e86fd1496b38c5")
}
>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":30,"StudentName":"Chris","StudentAge":22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e5115e86fd1496b38c6")
}
>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":20,"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e5715e86fd1496b38c7")
}
>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":40,"StudentName":"Bob","StudentAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e6515e86fd1496b38c8")
}
>db.getDistinctWithSortedDataDemo.insertOne({"StudentId":40,"StudentName":"Bob","Stude
ntAge":20});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9b1e6d15e86fd1496b38c9")
}

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

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

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

{
   "_id" : ObjectId("5c9b1e3315e86fd1496b38c3"),
   "StudentId" : 10,
   "StudentName" : "John",
   "StudentAge" : 23
}
{
   "_id" : ObjectId("5c9b1e3e15e86fd1496b38c4"),
   "StudentId" : 20,
   "StudentName" : "Carol",
   "StudentAge" : 21
}
{
   "_id" : ObjectId("5c9b1e4415e86fd1496b38c5"),
   "StudentId" : 10,
   "StudentName" : "John",
   "StudentAge" : 23
}
{
   "_id" : ObjectId("5c9b1e5115e86fd1496b38c6"),
   "StudentId" : 30,
   "StudentName" : "Chris",
   "StudentAge" : 22
}
{
   "_id" : ObjectId("5c9b1e5715e86fd1496b38c7"),
   "StudentId" : 20,
   "StudentName" : "Carol",
   "StudentAge" : 21
}
{
   "_id" : ObjectId("5c9b1e6515e86fd1496b38c8"),
   "StudentId" : 40,
   "StudentName" : "Bob",
   "StudentAge" : 20
}
{
   "_id" : ObjectId("5c9b1e6d15e86fd1496b38c9"),
   "StudentId" : 40,
   "StudentName" : "Bob",
   "StudentAge" : 20
}

以下は、「StudentName」の並べ替えられたデータを使用して個別の値を取得するためのクエリです

> db.getDistinctWithSortedDataDemo.distinct("StudentName").sort();

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

[ "Bob", "Carol", "Chris", "John" ]

以下は、StudentAgeの並べ替えられたデータで個別の値を取得するためのクエリです

> db.getDistinctWithSortedDataDemo.distinct("StudentAge").sort();

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

[ 20, 21, 22, 23 ]

  1. MongoDBのすべてのサブドキュメントでオブジェクトの個別のペアを取得しますか?

    オブジェクトの個別のペアを取得するには、$groupを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo522.insertOne({"Name":"John","Score":45});{    "acknowledged" : true,    "insertedId" : ObjectId("5e89b646b3fbf26334ef611b") } > db.demo522.inser

  2. MongoDBで個別の要素の最大値を取得する方法

    個別の要素の最大値を取得するには、MongoDBのaggregate()で$sortと$groupを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo750.insertOne({id:101,value:50}); {    "acknowledged" : true,    "insertedId" : ObjectId("5eae74b2a930c785c834e566") } > db.demo750.insertOne({id:102,va