Teknik Query Data di MySQL Menggunakan SELECT Statement Secara Efisien

Membatasi Hasil Query dengan LIMIT

Dalam SQL, perintah LIMIT berfungsi untuk membatasi jumlah data yang ditampilkan dari hasil query. LIMIT sangat berguna ketika kita hanya ingin mengambil sejumlah data tertentu dari tabel, seperti menampilkan sampel atau hanya beberapa data pertama dari hasil query yang besar.

LIMIT digunakan dengan menyebutkan jumlah data yang diinginkan setelah kata kunci tersebut. Ketika LIMIT diikuti oleh satu angka, MySQL akan mengambil sejumlah baris data mulai dari baris pertama hingga jumlah yang ditentukan.

Contoh berikut menunjukkan cara menggunakan LIMIT untuk mengambil 5 data pertama dari kolom prod_name dalam tabel products:

SELECT prod_name FROM products LIMIT 5;

Maka hasil dari query ini hanya akan menampilkan 5 baris pertama:

| prod_name     |
|---------------|
| 0.5 ton anvil |
| 1 ton anvil   |
| 2 ton anvil   |
| Oil can       |
| Fuses         |

Penggunaan LIMIT dan OFFSET dalam Pengambilan Data

Kita bisa membatasi jumlah baris yang diambil dan juga menentukan dari baris mana data diambil dengan menggunakan OFFSET. Dalam MySQL, OFFSET ditulis bersamaan dengan LIMIT untuk menentukan titik awal pengambilan data. Contohnya:

SELECT prod_name FROM products LIMIT 5 OFFSET 5;

Query ini akan mengambil 5 baris data, dimulai dari baris ke-6.

Ada juga cara lain untuk menulis LIMIT dengan OFFSET menggunakan dua angka setelah LIMIT, seperti:

SELECT prod_name FROM products LIMIT 5, 5;

Penulisan ini memiliki arti yang sama, yaitu mengambil 5 baris mulai dari baris ke-6, di mana angka pertama (5) adalah OFFSET dan angka kedua (5) adalah jumlah data yang ingin diambil.

Manfaat LIMIT dan OFFSET

  • LIMIT tanpa OFFSET memudahkan kita untuk mengambil sejumlah data awal dari hasil query.
  • Kombinasi LIMIT dan OFFSET sangat berguna untuk pengaturan data dalam aplikasi seperti tampilan halaman (*pagination*), di mana setiap halaman memerlukan jumlah data yang sama tetapi dimulai dari posisi yang berbeda.

Mengambil Data Unik dengan DISTINCT

Dalam SQL, perintah DISTINCT digunakan dalam SELECT Statement untuk mendapatkan data tanpa duplikasi. Jika ada data yang sama di suatu kolom dan kita hanya ingin menampilkan nilai-nilai yang berbeda, DISTINCT memastikan setiap nilai muncul satu kali dalam hasil query.

DISTINCT ditempatkan setelah kata kunci SELECT dan sebelum nama kolom yang ingin diambil. Perintah ini memberi tahu MySQL untuk hanya menampilkan data unik dari kolom tersebut dan menghapus baris-baris yang memiliki nilai yang sama.

Sintaks untuk menggunakan DISTINCT adalah sebagai berikut:

SELECT DISTINCT column_name FROM table_name;
  • DISTINCT: menginstruksikan SQL untuk hanya menampilkan nilai unik di kolom yang ditentukan.
  • column_name: nama kolom yang ingin diambil datanya secara unik.
  • FROM: menunjukkan tabel asal data.

Misalnya, kita ingin mendapatkan data unik dari kolom vend_id di tabel products. Tanpa menggunakan DISTINCT, jika ada beberapa produk dari vendor yang sama, maka setiap ID vendor akan muncul beberapa kali dalam hasil query. Dengan DISTINCT, kita bisa memastikan hasilnya hanya menampilkan setiap ID vendor satu kali.

Contohnya adalah sebagai berikut:

SELECT DISTINCT vend_id FROM products;

Jika tabel products memiliki data seperti ini:

| vend_id |
|---------|
| 1001    |
| 1001    |
| 1002    |
| 1003    |
| 1003    |
| 1003    |
| 1004    |

Hasil dari query tersebut hanya akan menunjukkan ID vendor yang unik, sehingga tampilannya akan seperti ini:

| vend_id |
|---------|
| 1001    |
| 1002    |
| 1003    |
| 1004    |

Catatan Penting

  • DISTINCT berlaku untuk kombinasi kolom yang dipilih dalam query. Jika lebih dari satu kolom digunakan dengan DISTINCT, maka SQL akan memastikan kombinasi kolom tersebut unik.
  • DISTINCT hanya menghapus duplikasi dari kolom yang ditentukan dan tidak mempengaruhi kolom lain di tabel.

Artikel Terbaru