mongoDB 開始位置を指定してデータを取得する

mongoDB 開始位置を指定してデータを取得する

mongoDBで、開始位置を指定してデータを取得する手順を記述してます。「find」に「skip」と「limit」を使用します。

環境

  • OS Ubuntu 20.04
  • MongoDB 5.0.5

手順

開始位置を指定してデータを取得するには、「db.コレクション名.find({}).skip().limit()」を使用します。

db.コレクション名.find({}).skip(位置 0から開始).limit(件数)

実際に、以下のデータベース「hoge」にある「foo」というコレクション(テーブル)のドキュメント(レコード)を使用して、位置を指定して件数を取得してみます。

> use hoge

> db.foo.find()

{ "_id" : ObjectId("61b6dbe43d393774a1cf22cb"), "name" : "itiro", "age" : 10, "gender" : "m" }
{ "_id" : ObjectId("61b6dbe83d393774a1cf22cc"), "name" : "jiro", "age" : 20, "gender" : "m" }
{ "_id" : ObjectId("61b6dbed3d393774a1cf22cd"), "name" : "saburo", "age" : 30, "gender" : "m" }
{ "_id" : ObjectId("61b6dc4c3d393774a1cf22ce"), "name" : "jiro", "age" : 25, "gender" : "f" }
{ "_id" : ObjectId("61b6dc503d393774a1cf22cf"), "name" : "jiro", "age" : 30, "gender" : "x" }

「3」つ目のデータから「2」件を取得してみます。

> db.foo.find({}).skip(2).limit(2)

{ "_id" : ObjectId("61b6dbed3d393774a1cf22cd"), "name" : "saburo", "age" : 30, "gender" : "m" }
{ "_id" : ObjectId("61b6dc4c3d393774a1cf22ce"), "name" : "jiro", "age" : 25, "gender" : "f" }

指定した位置から取得されていることが確認できます。