OFFSET LIMIT (NoSQL クエリ)
適用対象: NoSQL
OFFSET LIMIT
句は、スキップした後、クエリからいくつかの値を取得するオプションの句です。 OFFSET LIMIT 句には、OFFSET
の数と LIMIT
の数が必要です。
OFFSET LIMIT
を ORDER BY
句と一緒に使用した場合、スキップが実行され、順序付けられた値を受け取る結果セットが生成されます。 ORDER BY
句を使用しない場合、決定論的順序の値になります。
構文
OFFSET <offset_amount> LIMIT <limit_amount>
引数
説明 | |
---|---|
<offset_amount> |
クエリの結果でスキップする項目の数を整数で指定します。 |
<limit_amount> |
クエリ結果に含める項目の数を整数で指定します。 |
例
このセクションの例では、この項目の参照セットを使用します。 各項目には name
プロパティが含まれます。
[
{
"name": "Sawyer Miller",
},
{
"name": "Jennifer Wilkins",
},
{
"name": "Hannah Haynes",
},
{
"name": "Isaac Talbot",
},
{
"name": "Riley Johnson",
}
]
この例では、OFFSET LIMIT
句を使用するクエリを含めて、1 つの 項目をスキップして次の 3 つを取得することで、一致する項目のサブセットを返します。
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"
}
]
解説
OFFSET LIMIT
句には、OFFSET
数とLIMIT
数の両方が必要です。 省略可能なORDER BY
句を使用すると、順序付けられた値に対してスキップを実行することで結果セットが生成されます。 そうでない場合、クエリでは、決められた順序の値が返されます。OFFSET LIMIT
を使用するクエリの RU 料金は、オフセットされる用語の数が増えるにつれて増加します。 複数の結果ページがあるクエリの場合は、通常、継続トークンを使用することをお勧めします。 継続トークンとは、後でクエリを再開できる場所の "ブックマーク" です。OFFSET LIMIT
を使用する場合、"ブックマーク" はありません。 クエリの次のページを返す場合は、最初から開始する必要があります。- 項目を完全にスキップしてクライアント リソースを節約したい場合は、
OFFSET LIMIT
を使用してください。 たとえば、1000 番目のクエリ結果にスキップし、1 から 999 の結果は表示する必要がない場合は、OFFSET LIMIT
を使用します。 バックエンドでは、OFFSET LIMIT
は引き続き、スキップされた項目を含めて各項目を読み込みます。 パフォーマンス上の利点は、不要な項目の処理を回避することによる、クライアント リソースの削減で測定されます。