Klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 digunakan dalam pernyataanLIMIT row_count;
Code language: SQL (Structured Query Language) (sql)8 untuk membatasi jumlah baris yang akan dikembalikan. KlausaLIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 menerima satu atau dua argumen. Nilai kedua argumen harus nol atau bilangan bulat positifBerikut ini mengilustrasikan sintaks klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 dengan dua argumenSELECT select_list FROM table_name LIMIT [offset,] row_count;
Code language: SQL (Structured Query Language) (sql)_Dalam sintaks ini
LIMIT 0 , row_count;
_1 menentukan offset dari baris pertama yang akan dikembalikan.LIMIT 0 , row_count;
_1 dari baris pertama adalah 0, bukan 1LIMIT 0 , row_count;
_3 menentukan jumlah maksimum baris yang akan dikembalikan
Gambar berikut mengilustrasikan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6Saat Anda menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 dengan satu argumen, MySQL akan menggunakan argumen ini untuk menentukan jumlah maksimum baris yang akan ditampilkan dari baris pertama kumpulan hasilOleh karena itu, kedua klausa ini setara
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)Dan
LIMIT 0 , row_count;
Selain sintaks di atas, MySQL menyediakan sintaks klausa alternatif
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 berikutLIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)Klausa LIMIT dan ORDER BY
Secara default, pernyataan
LIMIT 0 , row_count;
_7 mengembalikan baris dalam urutan yang tidak ditentukan. Saat Anda menambahkan klausaLIMIT row_count;
LIMIT 0 , row_count;
7, baris yang dikembalikan tidak dapat diprediksiOleh karena itu, untuk memastikan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 mengembalikan keluaran yang diharapkan, Anda harus selalu menggunakannya dengan klausaLIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)1 seperti iniSELECT select_list FROM table_name ORDER BY sort_expression LIMIT offset, row_count;
Code language: SQL (Structured Query Language) (sql)Gambar berikut mengilustrasikan urutan evaluasi
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 klausa dalam pernyataanLIMIT 0 , row_count;
7Contoh klausa LIMIT MySQL
Kami akan menggunakan tabel
LIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)_4 dari database sampel untuk demonstrasi1) Menggunakan LIMIT MySQL untuk mendapatkan baris tertinggi atau terendah
Pernyataan ini menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_6 untuk mendapatkan lima pelanggan teratas yang memiliki kredit tertinggiSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit DESC LIMIT 5;
Code language: SQL (Structured Query Language) (sql)Dalam contoh ini
- Pertama, klausa
LIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)_6 mengurutkan pelanggan berdasarkan kredit dari tinggi ke rendah - Kemudian, klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_6 mengembalikan 5 baris pertama
Demikian pula, contoh ini menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_6 untuk menemukan lima pelanggan yang memiliki kredit terendahSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit LIMIT 5;
Code language: SQL (Structured Query Language) (sql)Dalam contoh ini
- Pertama, klausa
LIMIT row_count OFFSET offset
- Kemudian, klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_6 mengembalikan 5 baris pertama
Karena ada lebih dari 5 pelanggan yang kreditnya nol, maka hasil dari query di atas dapat menyebabkan hasil yang tidak konsisten
Untuk memperbaiki masalah ini, Anda perlu menambahkan lebih banyak kolom ke klausa
LIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)6 untuk membatasi baris dalam urutan unikSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit, customerNumber LIMIT 5;
Code language: SQL (Structured Query Language) (sql)2) Menggunakan klausa LIMIT MySQL untuk pagination
Saat Anda menampilkan data di layar, Anda sering ingin membagi baris menjadi beberapa halaman, di mana setiap halaman berisi jumlah baris yang terbatas seperti 10 atau 20
Untuk menghitung jumlah halaman, Anda mengambil total baris dibagi dengan jumlah baris per halaman. Untuk mengambil baris halaman tertentu, Anda dapat menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6Kueri ini menggunakan fungsi agregat
SELECT select_list FROM table_name ORDER BY sort_expression LIMIT offset, row_count;
Code language: SQL (Structured Query Language) (sql)_3 untuk mendapatkan total baris dari tabelLIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)4SELECT COUNT(*) FROM customers;
Code language: SQL (Structured Query Language) (sql)+----------+ | COUNT(*) | +----------+ | 122 | +----------+ 1 row in set (0.00 sec)
Code language: JavaScript (javascript)Misalkan setiap halaman memiliki 10 baris; . Halaman ke-13 terakhir hanya berisi dua baris
Kueri ini menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 untuk mendapatkan baris halaman 1 yang berisi 10 pelanggan pertama yang diurutkan berdasarkan nama pelangganLIMIT row_count;
Code language: SQL (Structured Query Language) (sql)0Kueri ini menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 untuk mendapatkan baris halaman kedua yang menyertakan baris 11 – 20LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_1Dalam contoh ini, klausa
SELECT select_list FROM table_name ORDER BY sort_expression LIMIT offset, row_count;
Code language: SQL (Structured Query Language) (sql)_7 mengembalikan 10 baris untuk baris 11 – 203) Menggunakan MySQL LIMIT untuk mendapatkan nilai tertinggi atau terendah ke-n
Untuk mendapatkan nilai tertinggi atau terendah ke-n, Anda menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 berikutLIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_2Klausa
SELECT select_list FROM table_name ORDER BY sort_expression LIMIT offset, row_count;
Code language: SQL (Structured Query Language) (sql)9 mengembalikanSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit DESC LIMIT 5;
Code language: SQL (Structured Query Language) (sql)0 baris dimulai pada barisSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit DESC LIMIT 5;
Code language: SQL (Structured Query Language) (sql)1Misalnya, berikut menemukan pelanggan yang memiliki kredit tertinggi kedua
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_3Mari kita periksa kembali hasilnya. Kueri ini mengembalikan semua pelanggan yang diurutkan menurut kredit dari tinggi ke rendah
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)_4Seperti yang Anda lihat dengan jelas dari output, hasilnya benar seperti yang diharapkan
Perhatikan bahwa teknik ini berhasil bila tidak ada dua pelanggan yang memiliki batas kredit yang sama. Untuk mendapatkan hasil yang lebih akurat, Anda harus menggunakan fungsi jendela
SELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit DESC LIMIT 5;
Code language: SQL (Structured Query Language) (sql)2Klausa MySQL LIMIT dan DISTINCT
Jika Anda menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 dengan klausaSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit DESC LIMIT 5;
Code language: SQL (Structured Query Language) (sql)4, MySQL segera berhenti mencari ketika menemukan jumlah baris unik yang ditentukan dalam klausaLIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6Contoh menggunakan klausa
LIMIT row_count;
Code language: SQL (Structured Query Language) (sql)6 dengan klausaSELECT customerNumber, customerName, creditLimit FROM customers ORDER BY creditLimit DESC LIMIT 5;
Code language: SQL (Structured Query Language) (sql)7 untuk mengembalikan lima status unik pertama dalam tabelLIMIT row_count OFFSET offset
Code language: SQL (Structured Query Language) (sql)4