C'è un modo in MySQL per far saltare i primi 10 risultati di una query SELECT? Mi piacerebbe che funzionasse qualcosa come LIMIT.
C'è un modo in MySQL per far saltare i primi 10 risultati di una query SELECT? Mi piacerebbe che funzionasse qualcosa come LIMIT.
Risposte:
Usa LIMIT con due parametri. Ad esempio, per restituire i risultati 11-60 (dove il risultato 1 è la prima riga), utilizza:
SELECT * FROM foo LIMIT 10, 50
Per una soluzione che restituisca tutti i risultati, vedere la risposta di Thomas .
C'è anche un OFFSET che dovrebbe fare il trucco:
SELECT column FROM table
LIMIT 10 OFFSET 10
limit 10,10
Dal manuale :
Per recuperare tutte le righe da un certo offset fino alla fine del set di risultati, è possibile utilizzare un numero elevato per il secondo parametro. Questa istruzione recupera tutte le righe dalla 96a riga all'ultima:
SELECT * FROM tbl LIMIT 95,18446744073709551615;
Ovviamente, dovresti sostituire 95con 10. Il numero elevato che usano è 2 ^ 64 - 1, tra l'altro.
LIMIT ti consente di saltare un numero qualsiasi di righe. Ha due parametri e il primo di questi: quante righe saltare
select * from table where id not in (select id from table limit 10)
dov'è idla chiave nel tuo tavolo.
Se il tuo tavolo ha l'ordinamento per ID, potresti farlo facilmente:
select * from table where id > 10