Betariko.com - Klausa SQL TOP digunakan untuk mengambil nomor TOP N atau catatan X persen dari sebuah tabel.
Catatan Semua database tidak mendukung klausa TOP. Misalnya MySQL mendukung klausa LIMIT untuk mengambil sejumlah catatan terbatas sementara Oracle menggunakan perintah ROWNUM untuk mengambil sejumlah catatan terbatas.
Sintaksis
Sintaks dasar klausa TOP dengan pernyataan SELECT adalah sebagai berikut.
SELECT nomor TOP|percent column_name(s)FROM nama_tabelWHERE [kondisi]
Contoh
Pertimbangkan tabel PELANGGAN yang memiliki catatan berikut:
+----+----------+-----+-----------+----------+| ID | NAMA | USIA | ALAMAT | GAJI |+----+----------+-----+-----------+----------+| 1 | Ramesh | 32 | Ahmadabad | 20000.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 3 | kaushik | 23 | Kota | 20000.00 || 4 | Chaitali | 25 | Mumbai | 6500,00 || 5 | Hardik | 27 | Bhopal | 8500.00 || 6 | Komal | 22 | anggota parlemen | 4500.00 || 7 | Muffy | 24 | Indonesia | 10000.00 |+----+----------+-----+-----------+----------+
Kueri berikut adalah contoh di server SQL, yang akan mengambil 3 catatan teratas dari tabel PELANGGAN.
SQL> SELECT TOP 3 * FROM PELANGGAN;
Ini akan menghasilkan hasil berikut
+----+---------+-----+-----------+---------+| ID | NAME | AGE | ADDRESS | SALARY |+----+---------+-----+-----------+---------+| 1 | Ramesh | 32 | Ahmedabad | 2000.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 3 | kaushik | 23 | Kota | 2000.00 |+----+---------+-----+-----------+---------+
Jika Kamu menggunakan server MySQL, maka berikut adalah contoh yang setara
SQL> SELECT * FROM PELANGGANBATAS 3;
Ini akan menghasilkan hasil berikut
+----+---------+-----+-----------+--------+| ID | NAMA | USIA | ALAMAT | GAJI |+----+---------+-----+-----------+--------+| 1 | Ramesh | 32 | Ahmadabad | 20000.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 3 | kaushik | 23 | Kota | 20000.00 |+----+---------+-----+-----------+--------+
Jika Kamu menggunakan server Oracle, maka blok kode berikut memiliki contoh yang setara.
SQL> SELECT * FROM PELANGGANWHERE ROWNUM <= 3;
Ini akan menghasilkan hasil berikut
+----+---------+-----+-----------+--------+| ID | NAMA | USIA | ALAMAT | GAJI |+----+---------+-----+-----------+--------+| 1 | Ramesh | 32 | Ahmadabad | 20000.00 || 2 | Khilan | 25 | Delhi | 1500.00 || 3 | kaushik | 23 | Kota | 20000.00 |+----+---------+-----+-----------+--------+