MySQL melewatkan 10 hasil pertama

102

Apakah ada cara di MySQL agar 10 hasil pertama dari kueri SELECT dilewati? Saya ingin bekerja seperti LIMIT.

Brian
sumber
7
semua jawaban di sini tidak memiliki klausa ORDER BY. Tabel SQL tidak memiliki urutan default, dan tanpa ORDER BY eksplisit, tidak ada cara untuk mengetahui mana 10 hasil pertama yang dilewati
fthiella

Jawaban:

125

Gunakan LIMIT dengan dua parameter. Misalnya, untuk mengembalikan hasil 11-60 (di mana hasil 1 adalah baris pertama), gunakan:

SELECT * FROM foo LIMIT 10, 50

Untuk solusi mengembalikan semua hasil, lihat jawaban Thomas .

Dominic Rodger
sumber
Bagaimana jika beberapa baris dihapus di antara nomor yang Anda sebutkan.
Alex
91

Ada OFFSET juga yang harus melakukan trik:

SELECT column FROM table
LIMIT 10 OFFSET 10
jamesaharvey
sumber
7
lebih mudah untuk dimengerti daripadalimit 10,10
shellbye
40

OFFSET adalah apa yang Anda cari.

SELECT * FROM table LIMIT 10 OFFSET 10
Trigonometri
sumber
33

Dari manual :

Untuk mengambil semua baris dari offset tertentu hingga akhir set hasil, Anda dapat menggunakan sejumlah besar untuk parameter kedua. Pernyataan ini mengambil semua baris dari baris ke-96 hingga yang terakhir:

SELECT * FROM tbl LIMIT 95,18446744073709551615;

Jelas, Anda harus mengganti 95dengan 10. Angka besar yang mereka gunakan adalah 2 ^ 64 - 1.

Thomas
sumber
5

LIMIT memungkinkan Anda melewati sejumlah baris. Ini memiliki dua parameter, dan yang pertama - berapa banyak baris yang harus dilewati

Akal Sehat Anda
sumber
Ini membuat saya jelas bahwa "Apa itu Offset" Terima kasih @Col. Pecahan peluru
OM The Eternity
2
select * from table where id not in (select id from table limit 10)

di mana idmenjadi kunci di meja Anda.

mickeymoon
sumber
Ini berguna dan cepat dilakukan, untuk impala dan database lain di mana batas dengan offset memerlukan argumen urutan yang tidak selalu diinginkan.
KarthikS
-5

Jika tabel Anda telah diurutkan berdasarkan id, Anda dapat dengan mudah melakukannya dengan:

select * from table where id > 10
Biswajit Paul
sumber