Apakah ada cara di MySQL agar 10 hasil pertama dari kueri SELECT dilewati? Saya ingin bekerja seperti LIMIT.
Apakah ada cara di MySQL agar 10 hasil pertama dari kueri SELECT dilewati? Saya ingin bekerja seperti LIMIT.
Jawaban:
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 .
Ada OFFSET juga yang harus melakukan trik:
SELECT column FROM table
LIMIT 10 OFFSET 10
limit 10,10
OFFSET adalah apa yang Anda cari.
SELECT * FROM table LIMIT 10 OFFSET 10
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 95
dengan 10
. Angka besar yang mereka gunakan adalah 2 ^ 64 - 1.
LIMIT memungkinkan Anda melewati sejumlah baris. Ini memiliki dua parameter, dan yang pertama - berapa banyak baris yang harus dilewati
select * from table where id not in (select id from table limit 10)
di mana id
menjadi kunci di meja Anda.
Jika tabel Anda telah diurutkan berdasarkan id, Anda dapat dengan mudah melakukannya dengan:
select * from table where id > 10