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

MongoDBで、最初と最後のドキュメントを取得するための最も効率的な方法は何ですか?


MongoDBで最初と最後のドキュメントを取得するには、aggregate()をそれぞれ$firstと$lastとともに使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo73.insertOne({"Name":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e29c41b71bf0181ecc4226c")
}
.
> db.demo73.insertOne({"Name":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e29c41e71bf0181ecc4226d")
}
> db.demo73.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e29c42271bf0181ecc4226e")
}

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

> db.demo73.find();

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

{ "_id" : ObjectId("5e29c41b71bf0181ecc4226c"), "Name" : "Chris" }
{ "_id" : ObjectId("5e29c41e71bf0181ecc4226d"), "Name" : "Bob" }
{ "_id" : ObjectId("5e29c42271bf0181ecc4226e"), "Name" : "David" }

以下は、最初と最後のドキュメントを取得する方法です-

> db.demo73.aggregate({
...    $group: {
...       _id: null,
...       first: { $first: "$$ROOT" },
...       last: { $last: "$$ROOT" }
...    }
... }
... );

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

{
   "_id" : null, "first" : { "_id" : ObjectId("5e29c41b71bf0181ecc4226c"), "Name" : "Chris" }, "last" : {
      "_id" : ObjectId("5e29c42271bf0181ecc4226e"), "Name" : "David"
   }
}

  1. MySQLでテーブルの最初と最後のレコードを取得するにはどうすればよいですか?

    最初と最後のレコードを取得するには、UNIONを使用します。 LIMITは、必要なレコード数を取得するためにも使用されます。 まずテーブルを作成しましょう- mysql> create table DemoTable694 (    EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    EmployeeName varchar(100),    EmployeeSalary int ); Query OK, 0 rows affected (0.58 sec) 挿入コマ

  2. Pythonで最も効率的な文字列連結メソッドは何ですか?

    文字列変数に文字列を追加する最良の方法は、+または+=を使用することです。これは、読みやすく高速だからです。彼らはまた同じくらい速いです。これ以外に、2つの文字列を使用している場合は、append()も使用できます。 文字列のリストを連結する場合は、join()を使用することをお勧めします。これは、文字列のリストを受け入れて連結し、この場合に最も読みやすいためです。 パフォーマンスを求めている場合、非常に長い文字列を使用していると、追加/結合がわずかに高速になります。