OFFSET LIMIT (dotaz NoSQL)
PLATÍ PRO: NoSQL
Klauzule OFFSET LIMIT
je volitelná klauzule, která se má přeskočit , a pak z dotazu vzít určitý počet hodnot. Počet OFFSET
a LIMIT
počet jsou vyžadovány v klauzuli OFFSET LIMIT.
Při OFFSET LIMIT
použití s ORDER BY
klauzulí se sada výsledků vytvoří tak, že se přeskočí a převezme seřazené hodnoty. Pokud se nepoužívá žádná ORDER BY
klauzule, výsledkem je deterministické pořadí hodnot.
Syntaxe
OFFSET <offset_amount> LIMIT <limit_amount>
Argumenty
Popis | |
---|---|
<offset_amount> |
Určuje celočíselné číslo položek, které mají výsledky dotazu přeskočit. |
<limit_amount> |
Určuje celočíselné číslo položek, které mají výsledky dotazu obsahovat. |
Příklady
V příkladu v této části se používá tato referenční sada položek. Každá položka obsahuje name
vlastnost.
[
{
"name": "Sawyer Miller",
"team": "Leadership team"
},
{
"name": "Jennifer Wilkins",
"team": "Leadership team"
},
{
"name": "Hannah Haynes",
"team": "Leadership team"
},
{
"name": "Isaac Talbot",
"team": "Leadership team"
},
{
"name": "Riley Johnson",
"team": "Leadership team"
}
]
Tento příklad obsahuje dotaz, který pomocí OFFSET LIMIT
klauzule vrátí podmnožinu odpovídajících položek tak, že přeskočí jednu položku a vezme další tři.
SELECT VALUE {
name: e.name
}
FROM
employees e
WHERE
e.team = "Leadership team"
ORDER BY
e.name
OFFSET 1 LIMIT 3
[
{
"name": "Isaac Talbot"
},
{
"name": "Jennifer Wilkins"
},
{
"name": "Riley Johnson"
}
]
Poznámky
- V
OFFSET
klauzuli se vyžadujeOFFSET LIMIT
počet iLIMIT
počet. Pokud se použije volitelnáORDER BY
klauzule, vytvoří se sada výsledků přeskočením seřazených hodnot. V opačném případě dotaz vrátí pevné pořadí hodnot. - Poplatky za RU dotazu se s rostoucím
OFFSET LIMIT
počtem termínů posunu zvyšují. U dotazů s více stránkami výsledků obvykle doporučujeme používat tokeny pokračování. Tokeny pokračování jsou záložkou pro místo, kde se dotaz může později obnovit. Pokud použijeteOFFSET LIMIT
, neexistuje žádná záložka. Pokud byste chtěli vrátit další stránku dotazu, museli byste začít od začátku. - Pro případy, kdy chcete přeskočit položky zcela a uložit prostředky klienta, byste měli použít
OFFSET LIMIT
. PokudOFFSET LIMIT
například chcete přeskočit na 1000. výsledek dotazu a nemusíte zobrazovat výsledky 1 až 999. Na back-enduOFFSET LIMIT
se stále načte každá položka, včetně těch, které se přeskočí. Výhoda výkonu se měří při snižování prostředků klienta tím, že se vyhnete zpracování položek, které nejsou potřeba.
Související obsah
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro