Clickhouse: Cláusula LIMIT

Cláusula LIMIT
LIMIT mpermite selecionar as primeiras mlinhas do resultado.

LIMIT n, mpermite selecionar as mlinhas do resultado após pular as primeiras nlinhas. A LIMIT m OFFSET nsintaxe é equivalente.

ne mdevem ser inteiros não negativos.

Se não houver uma cláusula ORDER BY que classifique explicitamente os resultados, a escolha de linhas para o resultado pode ser arbitrária e não determinística.

Observação
O número de linhas no conjunto de resultados também pode depender da configuração do limite .

LIMITE ... COM LAÇOS 
Ao definir o modificador WITH TIES para LIMIT n[,m] e especificar expr_list ORDER BY, você obterá no resultado primeiro n ou n,m linhas e todas as linhas com os mesmos valores de campos ORDER BY iguais à linha na posição n para LIMIT n e m para LIMIT n,m.

Este modificador também pode ser combinado com o modificador ORDER BY ... WITH FILL .

Por exemplo, a seguinte consulta

SELECT * FROM (
    SELECT number%50 AS n FROM numbers(100)
) ORDER BY n LIMIT 0,5

retorna

n
0
0
1
1
2

mas depois de aplicar o modificador WITH TIES

SELECT * FROM (
    SELECT number%50 AS n FROM numbers(100)
) ORDER BY n LIMIT 0,5 WITH TIES

ele retorna outro conjunto de linhas

n
0
0
1
1
2
2

porque a linha número 6 tem o mesmo valor “2” para o campo n que a linha número 5

 

Referências:

HAVING Clause. Clickhouse.com. Disponível em:
https://clickhouse.com/docs/en/sql-reference/statements/select/limit. Acesso em: 06 Jan 2024.

Data de Publicação: 09-09-2024

Categoria: Clickhouse