LIMITE DE DESLOCAMENTO (consulta NoSQL)
APLICA-SE A: NoSQL
A OFFSET LIMIT
cláusula é uma cláusula opcional para ignorar e, em seguida, retirar alguns valores da consulta. A OFFSET
contagem e a LIMIT
contagem são necessárias na cláusula OFFSET LIMIT.
Quando OFFSET LIMIT
é utilizado com uma ORDER BY
cláusula, o conjunto de resultados é produzido ao ignorar e assumir os valores ordenados. Se não for utilizada nenhuma ORDER BY
cláusula, resulta numa ordem determinista de valores.
Sintaxe
OFFSET <offset_amount> LIMIT <limit_amount>
Argumentos
Description | |
---|---|
<offset_amount> |
Especifica o número inteiro de itens que os resultados da consulta devem ignorar. |
<limit_amount> |
Especifica o número inteiro de itens que os resultados da consulta devem incluir. |
Exemplos
Para o exemplo nesta secção, este conjunto de referência de itens é utilizado. Cada item inclui uma name
propriedade.
[
{
"name": "Sawyer Miller",
},
{
"name": "Jennifer Wilkins",
},
{
"name": "Hannah Haynes",
},
{
"name": "Isaac Talbot",
},
{
"name": "Riley Johnson",
}
]
Este exemplo inclui uma consulta que utiliza a OFFSET LIMIT
cláusula para devolver um subconjunto dos itens correspondentes, ignorando um item e tomando os três seguintes.
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"
}
]
Observações
- Tanto a
OFFSET
contagem como aLIMIT
contagem são necessárias naOFFSET LIMIT
cláusula . Se for utilizada uma cláusula opcionalORDER BY
, o conjunto de resultados é produzido ao ignorar os valores ordenados. Caso contrário, a consulta devolve uma ordem fixa de valores. - O custo de RUs de uma consulta com
OFFSET LIMIT
aumenta à medida que o número de termos que estão a ser compensados aumenta. Para consultas que têm múltiplas páginas de resultados, normalmente recomendamos a utilização de tokens de continuação. Os tokens de continuação são um "marcador" para o local onde a consulta pode ser retomada mais tarde. Se utilizarOFFSET LIMIT
, não existe nenhum "marcador". Se quisesse devolver a página seguinte da consulta, teria de começar do início. - Deve utilizar
OFFSET LIMIT
para casos em que gostaria de ignorar totalmente os itens e guardar recursos de cliente. Por exemplo, deve utilizarOFFSET LIMIT
se quiser avançar para o 1000.º resultado da consulta e não precisar de ver os resultados de 1 a 999. No back-end,OFFSET LIMIT
continua a carregar cada item, incluindo os itens que são ignorados. A vantagem de desempenho é medida na redução dos recursos do cliente ao evitar o processamento de itens que não são necessários.