Delen via


VERSCHUIVINGSLIMIET (NoSQL-query)

VAN TOEPASSING OP: NoSQL

De OFFSET LIMIT component is een optionele component om over te slaan en vervolgens een aantal waarden uit de query te nemen . Het OFFSET aantal en het LIMIT aantal zijn vereist in de component VERSCHUIVINGSLIMIET.

Wanneer OFFSET LIMIT wordt gebruikt met een ORDER BY component, wordt de resultatenset geproduceerd door de geordende waarden over te slaan en op te nemen. Als er geen ORDER BY component wordt gebruikt, resulteert dit in een deterministische volgorde van waarden.

Syntaxis

OFFSET <offset_amount> LIMIT <limit_amount>

Argumenten

Description
<offset_amount> Hiermee geeft u het gehele aantal items op dat de queryresultaten moeten overslaan.
<limit_amount> Hiermee geeft u het gehele aantal items op dat de queryresultaten moeten bevatten.

Voorbeelden

Voor het voorbeeld in deze sectie wordt deze referentieset met items gebruikt. Elk item bevat een name eigenschap.

[
  {
    "name": "Sawyer Miller",
  },
  {
    "name": "Jennifer Wilkins",
  },
  {
    "name": "Hannah Haynes",
  },
  {
    "name": "Isaac Talbot",
  },
  {
    "name": "Riley Johnson",
  }
]

Dit voorbeeld bevat een query die gebruikmaakt van de OFFSET LIMIT -component om een subset van de overeenkomende items te retourneren door één item over te slaan en de volgende drie items te nemen.

SELECT VALUE {
    name: e.name
}
FROM
    employees e
ORDER BY
    e.name
OFFSET 1 LIMIT 3
[
  {
    "name": "Isaac Talbot"
  },
  {
    "name": "Jennifer Wilkins"
  },
  {
    "name": "Riley Johnson"
  }
]

Opmerkingen

  • Zowel het OFFSET aantal als het LIMIT aantal zijn vereist in de OFFSET LIMIT -component. Als een optionele ORDER BY component wordt gebruikt, wordt de resultatenset geproduceerd door de geordende waarden over te slaan. Anders retourneert de query een vaste volgorde van waarden.
  • De RU-kosten van een query met OFFSET LIMIT nemen toe naarmate het aantal termen dat wordt verrekend toeneemt. Voor query's met meerdere pagina's met resultaten raden we meestal aan vervolgtokens te gebruiken. Vervolgtokens zijn een 'bladwijzer' voor de plaats waar de query later kan worden hervat. Als u gebruikt OFFSET LIMIT, is er geen bladwijzer. Als u de volgende pagina van de query wilt retourneren, moet u vanaf het begin beginnen.
  • U moet gebruiken OFFSET LIMIT voor gevallen waarin u items volledig wilt overslaan en clientresources wilt opslaan. U moet bijvoorbeeld gebruiken OFFSET LIMIT als u naar het 1000e queryresultaat wilt gaan en de resultaten 1 tot en met 999 niet hoeft te bekijken. Op de back-end OFFSET LIMIT worden nog steeds elk item geladen, inclusief de items die worden overgeslagen. Het prestatievoordeel wordt gemeten in het verminderen van clientresources door te voorkomen dat er items worden verwerkt die niet nodig zijn.