Kapiteleinführung

In diesem Kapitel wird die Paginierungsabfrage von MongoDB beschrieben, ähnlich der Verwendung von Paginierung in MYSQL. Die Paginierungsabfrage von MongoDB wird durch die Funktionen .limit und .skip des Cursors implementiert.

Testdaten

Fügen Sie einige Daten in die Bestandskollektion ein

db.inventory.insertMany( [
  { item: "Tagebuch", status: "A", size: { h: 14, w: 21, uom: "cm" }, instock: [ { warehouse: "A", qty: 5 } ] },
  { item: "Notizbuch", status: "A",  size: { h: 8.5, w: 11, uom: "in" }, instock: [ { warehouse: "C", qty: 5 } ] },
  { item: "Papier", status: "D", size: { h: 8.5, w: 11, uom: "in" }, instock: [ { warehouse: "A", qty: 60 } ] },
  { item: "Planer", status: "D", size: { h: 22.85, w: 30, uom: "cm" }, instock: [ { warehouse: "A", qty: 40 } ] },
  { item: "Postkarte", status: "A", size: { h: 10, w: 15.25, uom: "cm" }, instock: [ { warehouse: "B", qty: 15 }, { warehouse: "C", qty: 35 } ] }
]);

Begrenzung der zurückgegebenen Daten

db.inventory.find({}).limit(5)

Erklärung:

  • Verwenden Sie die Funktion limit, um die maximale Anzahl der zurückgegebenen Daten festzulegen.

Paginierung

db.inventory.find({}).limit(5).skip(2)

Erklärung:

  • Durch Einstellen von skip können Sie eine bestimmte Menge an Daten überspringen und mit limit die Anzahl der zurückgegebenen Daten begrenzen.
  • limit ist ähnlich wie das limit in SQL, und skip ist ähnlich wie das Offset in SQL.