todas as respostas aqui não têm uma cláusula ORDER BY. As tabelas SQL não têm uma ordem padrão e sem um ORDER BY explícito não há como saber quais são os primeiros 10 resultados a pular
fthiella
Respostas:
125
Use LIMIT com dois parâmetros. Por exemplo, para retornar os resultados 11-60 (onde o resultado 1 é a primeira linha), use:
SELECT*FROM foo LIMIT 10,50
Para obter uma solução que retorne todos os resultados, consulte a resposta de Thomas .
Para recuperar todas as linhas de um certo deslocamento até o final do conjunto de resultados, você pode usar um número grande para o segundo parâmetro. Esta instrução recupera todas as linhas da 96ª à última:
SELECT*FROM tbl LIMIT 95,18446744073709551615;
Obviamente, você deve substituir 95por 10. A propósito, o grande número que usam é 2 ^ 64 - 1.
Isso é útil e rápido de fazer, para impala e outros bancos de dados em que o limite com deslocamento requer um argumento de ordem que nem sempre é desejável.
KarthikS
-5
Se sua tabela tiver ordenação por id, você poderia facilmente fazer:
Respostas:
Use LIMIT com dois parâmetros. Por exemplo, para retornar os resultados 11-60 (onde o resultado 1 é a primeira linha), use:
Para obter uma solução que retorne todos os resultados, consulte a resposta de Thomas .
fonte
Também existe um OFFSET que deve resolver o problema:
fonte
limit 10,10
OFFSET é o que você está procurando.
fonte
Do manual :
Obviamente, você deve substituir
95
por10
. A propósito, o grande número que usam é 2 ^ 64 - 1.fonte
LIMIT permite que você pule qualquer número de linhas. Ele tem dois parâmetros, e o primeiro deles - quantas linhas para pular
fonte
onde
id
estar a chave em sua mesa.fonte
Se sua tabela tiver ordenação por id, você poderia facilmente fazer:
fonte