A cláusula LIMIT controla quantas linhas são retornadas no resultado da sua consulta.
Selecione as primeiras linhas:
Retorna as primeiras m linhas do resultado, ou todos os registros se houver menos de m.
Sintaxe alternativa de TOP (compatível com o MS SQL Server):
Isso equivale a LIMIT m e pode ser usado por compatibilidade com consultas do Microsoft SQL Server.
SELECT com OFFSET:
Ignora as primeiras n linhas e retorna as próximas m linhas.
Em ambas as formas, n e m devem ser inteiros não negativos.
Selecione linhas do fim do conjunto de resultados usando valores negativos:
| Sintaxe | Resultado |
|---|
LIMIT -m | Últimas m linhas |
LIMIT -m OFFSET -n | Últimas m linhas após ignorar as últimas n linhas |
LIMIT m OFFSET -n | Primeiras m linhas após ignorar as últimas n linhas |
LIMIT -m OFFSET n | Últimas m linhas após ignorar as primeiras n linhas |
A sintaxe LIMIT -n, -m é equivalente a LIMIT -m OFFSET -n.
Use valores decimais entre 0 e 1 para selecionar uma porcentagem das linhas:
| Sintaxe | Resultado |
|---|
LIMIT 0.1 | Primeiros 10% das linhas |
LIMIT 1 OFFSET 0.5 | A linha mediana |
LIMIT 0.25 OFFSET 0.5 | Terceiro quartil (25% das linhas após pular os primeiros 50%) |
- As frações devem ser valores Float64 maiores que 0 e menores que 1.
- Contagens fracionárias de linhas são arredondadas para o número inteiro seguinte.
Combinando tipos de LIMIT
Você pode combinar inteiros padrão com offsets fracionários ou negativos:
O modificador WITH TIES inclui linhas adicionais com os mesmos valores de ORDER BY da última linha dentro do limite.
Com WITH TIES, todas as linhas com o mesmo último valor são incluídas:
A linha 6 é incluída porque tem o mesmo valor (2) da linha 5.
O mesmo acontece quando o offset é especificado com a palavra-chave OFFSET:
Pular as 2 primeiras linhas e retornar 3 normalmente resultaria em 1, 1, 2, mas o segundo 2 é incluído porque tem o mesmo valor da última linha.
WITH TIES não é compatível com limites negativos.
Esse modificador pode ser combinado com o modificador ORDER BY ... WITH FILL.
Resultados não determinísticos: Sem a cláusula ORDER BY, as linhas retornadas podem ser arbitrárias e variar entre execuções da consulta.
Limite no servidor: O número de linhas retornadas também pode ser afetado pela configuração limit.
- LIMIT BY — Limita o número de linhas por grupo de valores, útil para obter os N principais resultados em cada categoria.