MySQL LIMIT & OFFSET dengan Contoh

Apa kata kunci LIMITnya?

Kata kunci limit digunakan untuk membatasi jumlah baris yang dikembalikan dalam hasil kueri.

Ini dapat digunakan bersama dengan sintaks kata kunci perintah SELECT, UPDATE OR DELETE LIMIT

Sintaks untuk kata kunci LIMIT adalah sebagai berikut

SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT  N;

SINI

  • “PILIH {nama bidang | *} DARI Nama tabel” adalah PILIH pernyataan berisi bidang yang ingin kami kembalikan dalam kueri kami.
  • “[Kondisi MANA]” bersifat opsional tetapi bila disediakan, dapat digunakan untuk menentukan filter pada kumpulan hasil.
  • “BATAS N” adalah kata kunci dan N adalah angka apa pun yang dimulai dari 0, menempatkan 0 sebagai batas tidak mengembalikan catatan apa pun dalam kueri. Menempatkan angka katakanlah 5 akan menghasilkan lima catatan. Jika catatan dalam tabel yang ditentukan kurang dari N, maka semua catatan dari tabel yang dikueri dikembalikan dalam kumpulan hasil.

Mari kita lihat contoh –

SELECT *  FROM members LIMIT 2;
membership_ number full_ names gender date_of _birth date_of _registration physical_ address postal_ address contact_ number email credit_ card_ number
1 Janet Jones Female 21-07-1980 NULL First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm NULL
2 Janet Smith Jones Female 23-06-1980 NULL Melrose 123 NULL NULL jj@fstreet.com NULL

Seperti yang Anda lihat dari tangkapan layar di atas, hanya dua anggota yang dikembalikan.

Mendapatkan daftar sepuluh (10) anggota hanya dari database

Misalkan kita ingin mendapatkan daftar 10 anggota pertama yang terdaftar dari basis data Myflix. Kita akan menggunakan skrip berikut untuk mencapainya.

SELECT *  FROM members LIMIT 10;

Mengeksekusi skrip di atas memberi kita hasil yang ditunjukkan di bawah ini

membership_ number full_ names gender date_of _birth date_of _registration physical_ address postal_ address contact_ number email credit_ card_ number
1 Janet Jones Female 21-07-1980 NULL First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm NULL
2 Janet Smith Jones Female 23-06-1980 NULL Melrose 123 NULL NULL jj@fstreet.com NULL
3 Robert Phil Male 12-07-1989 NULL 3rd Street 34 NULL 12345 rm@tstreet.com NULL
4 Gloria Williams Female 14-02-1984 NULL 2nd Street 23 NULL NULL NULL NULL
5 Leonard Hofstadter Male NULL NULL Woodcrest NULL 845738767 NULL NULL
6 Sheldon Cooper Male NULL NULL Woodcrest NULL 976736763 NULL NULL
7 Rajesh Koothrappali Male NULL NULL Woodcrest NULL 938867763 NULL NULL
8 Leslie Winkle Male 14-02-1984 NULL Woodcrest NULL 987636553 NULL NULL
9 Howard Wolowitz Male 24-08-1981 NULL SouthPark P.O. Box 4563 987786553 lwolowitz[at]email.me NULL

Perhatikan hanya 9 anggota yang dikembalikan dalam kueri kami karena N dalam klausa LIMIT lebih besar dari jumlah total catatan dalam tabel kami.

Penulisan ulang skrip di atas sebagai berikut

SELECT *  FROM members LIMIT 9;

Hanya mengembalikan 9 baris dalam kumpulan hasil kueri kami.

Menggunakan OFF SET dalam kueri LIMIT

The SET MATI value juga paling sering digunakan bersama dengan kata kunci LIMIT. Nilai OFF SET memungkinkan kita menentukan baris mana yang akan memulai pengambilan data

Misalkan kita ingin mendapatkan anggota dalam jumlah terbatas mulai dari tengah baris, kita dapat menggunakan kata kunci LIMIT bersama dengan nilai offset untuk mencapainya. Skrip yang ditunjukkan di bawah ini mengambil data mulai dari baris kedua dan membatasi hasilnya menjadi 2.

SELECT * FROM `members` LIMIT 1, 2;

Menjalankan skrip di atas dalam MySQL workbench terhadap myflixdb memberikan hasil berikut.

membership_ number full_ names gender date_of _birth date_of _registration physical_ address postal_ address contact_ number email credit_ card_ number
2 Janet Smith Jones Female 23-06-1980 NULL Melrose 123 NULL NULL jj@fstreet.com NULL
3 Robert Phil Male 12-07-1989 NULL 3rd Street 34 NULL 12345 rm@tstreet.com NULL

Note that here OFFSET = 1 Hence row#2 is returned & Limit = 2, Hence only 2 records are returned

Kapan sebaiknya kita menggunakan kata kunci LIMIT?

Misalkan kita sedang mengembangkan aplikasi yang berjalan di atas myflixdb. Perancang sistem kami telah meminta kami untuk membatasi jumlah catatan yang ditampilkan pada satu halaman hingga 20 catatan per halaman untuk mengatasi waktu pemuatan yang lambat. Bagaimana cara kita menerapkan sistem yang memenuhi persyaratan pengguna tersebut? Kata kunci LIMIT berguna dalam situasi seperti itu. Kami dapat membatasi hasil yang dikembalikan dari kueri hingga 20 catatan saja per halaman.

Ringkasan

  • Kata kunci LIMIT digunakan untuk membatasi jumlah baris yang dikembalikan dari kumpulan hasil.
  • Nomor LIMIT dapat berupa angka apa pun mulai dari nol (0) ke atas. Ketika nol (0) ditentukan sebagai batas, tidak ada baris yang dikembalikan dari kumpulan hasil.
  • Nilai OFF SET memungkinkan kita menentukan baris mana yang akan memulai pengambilan data
  • Ini dapat digunakan bersama dengan sintaks kata kunci perintah SELECT, UPDATE OR DELETE LIMIT