Bayangkan kamu punya gudang besar penuh ribuan kardus barang — tapi semuanya ditumpuk begitu saja tanpa label, tanpa sistem. Mau ambil satu barang pun harus korek-korek satu per satu. Frustrasi, kan? Nah, database tanpa perintah SELECT MySQL dasar itu persis seperti itu. Data ada, tapi kamu nggak bisa "ngobrol" sama mereka.
SELECT adalah perintah paling fundamental dalam SQL — ini pintu utamamu untuk mengambil, menampilkan, dan mengolah data dari database. Kalau kamu baru mulai belajar MySQL, ini adalah skill pertama yang wajib kamu kuasai sebelum lanjut ke mana-mana.
Ini adalah artikel ke-4 dari seri 28 artikel Belajar Query SQL MySQL. Di artikel sebelumnya kita sudah bahas cara membuat tabel dan memasukkan data. Sekarang saatnya kita belajar cara menampilkan data itu dengan berbagai variasi perintah SELECT — dari yang paling sederhana sampai yang mulai ber-filter.
Di artikel ini kamu akan belajar: sintaks dasar SELECT, cara memilih kolom tertentu, memberi alias, hingga menampilkan data tanpa duplikasi. Semua pakai contoh dari database toko online biar langsung relatable. Yuk mulai! ๐
Menurut survei Stack Overflow 2023, SQL masih masuk 10 bahasa/teknologi paling banyak digunakan oleh developer di seluruh dunia — lebih dari 10 tahun berturut-turut! Dan dari semua perintah SQL yang ada, SELECT adalah yang paling sering dieksekusi. Ini bukan sekadar "perintah dasar" — ini jantung dari database querying.
1. Sintaks Dasar SELECT MySQL Dasar
Bayangkan perintah SELECT seperti pelayan restoran. Kamu bilang ke pelayan: "Aku mau pesan ayam goreng dari menu makan siang." Nah, struktur kalimatnya itu: apa yang mau kamu ambil + dari mana. Persis sama dengan SQL!
Untuk latihan, kita pakai tabel produk dari database toko online. Ini struktur dan datanya:
SELECT * FROM produk;
๐ Hasil Query:
Tanda * (asterisk) artinya "ambil semua kolom". Ini praktis untuk eksplorasi data, tapi hindari menggunakan SELECT * di production — lebih baik sebut kolom yang kamu butuhkan agar query lebih efisien dan hemat bandwidth.
2. Memilih Kolom Tertentu dan Memberi Alias (AS)
Ini bagian favorit para SELECT MySQL dasar learner — karena langsung kerasa bedanya! Daripada ambil semua kolom, kamu bisa pilih kolom mana yang kamu butuhkan. Anggap aja kamu sedang pesan nasi campur — kamu bisa pilih lauk yang mana aja, nggak harus ambil semua.
Selain itu, kamu bisa memberi alias (nama panggilan) ke kolom menggunakan kata kunci AS. Berguna banget buat bikin output lebih ramah dibaca, terutama ketika nama kolom di database terlalu teknis.
SELECT nama_produk AS 'Nama Produk', harga AS 'Harga (Rp)', stok AS 'Tersedia' FROM produk;
๐ Hasil Query:
Alias hanya mengubah nama tampilan di hasil query — nama kolom asli di database tidak berubah. Jadi jangan bingung kalau kamu pakai AS 'Harga (Rp)', nama kolomnya di tabel tetap harga.
3. Menghapus Duplikasi Data dengan SELECT DISTINCT
Pernah minta daftar kota dari data pelanggan, eh yang muncul "Jakarta, Jakarta, Surabaya, Jakarta, Surabaya, Bandung"? Itu duplikasi — dan rasanya annoying. Solusinya: DISTINCT.
DISTINCT memerintahkan MySQL untuk hanya menampilkan nilai-nilai yang unik, menyingkirkan semua duplikasi. Contoh: kita mau tahu ada kategori apa saja di toko kita, tanpa pengulangan.
SELECT DISTINCT kategori FROM produk;
๐ Hasil Query:
Dari 5 baris data, DISTINCT meringkas menjadi 3 kategori unik.
DISTINCT bisa digunakan untuk beberapa kolom sekaligus, misalnya SELECT DISTINCT kategori, ukuran FROM produk. MySQL akan menampilkan kombinasi unik dari semua kolom yang disebutkan.
4. SELECT dengan Kalkulasi dan Ekspresi
SELECT bukan cuma bisa ambil data mentah — kamu juga bisa langsung hitung-hitungan di dalam query! Bayangkan ini seperti kalkulator yang terintegrasi langsung di dalam database. Misalnya, kita mau tampilkan harga setelah diskon 10%, atau total nilai stok setiap produk.
SELECT nama_produk AS 'Produk', harga AS 'Harga Normal', harga * 0.9 AS 'Harga Diskon 10%', harga * stok AS 'Nilai Stok (Rp)' FROM produk;
๐ Hasil Query:
๐งช Panduan Praktikum: Dari Nol sampai Bisa
Yuk ikuti langkah-langkah ini biar langsung bisa dipraktikkan di MySQL Workbench, phpMyAdmin, atau terminal kamu:
CREATE DATABASE toko_online; USE toko_online;
CREATE TABLE produk ( id_produk INT PRIMARY KEY AUTO_INCREMENT, nama_produk VARCHAR(100), kategori VARCHAR(50), harga DECIMAL(12,2), stok INT ); INSERT INTO produk VALUES (1, 'Sepatu Lari Pro', 'Olahraga', 450000, 50), (2, 'Kaos Polos Premium', 'Fashion', 120000, 200), (3, 'Topi Baseball Keren', 'Fashion', 85000, 150), (4, 'Botol Minum Thermos', 'Peralatan', 175000, 80), (5, 'Dumbbell 5kg', 'Olahraga', 320000, 30);
Jalankan query ini satu per satu, perhatikan perbedaan outputnya:
-- Tampilkan semua kolom SELECT * FROM produk; -- Hanya nama dan harga SELECT nama_produk, harga FROM produk; -- Dengan alias SELECT nama_produk AS 'Nama', harga AS 'Harga (Rp)' FROM produk; -- Kategori unik saja SELECT DISTINCT kategori FROM produk;
Coba buat query untuk menampilkan: nama produk, harga asli, dan harga setelah PPN 11% — hanya untuk kolom yang relevan, dengan alias yang informatif. Bisa? ๐
๐ Ringkasan: Variasi Perintah SELECT
Selalu biasakan memberi alias yang deskriptif pada kolom kalkulasi. Nama seperti harga * 0.9 susah dibaca di laporan. Tapi harga_setelah_diskon jauh lebih komunikatif — tim non-teknis pun langsung ngerti.
Ketika bekerja dengan database besar (jutaan baris), hindari SELECT * di production. Sebutkan kolom yang benar-benar kamu butuhkan. Ini bisa memangkas waktu eksekusi query hingga 60–80% pada tabel dengan banyak kolom, terutama kolom tipe TEXT atau BLOB yang berat.
✅ Kesimpulan
Di artikel ini kamu sudah belajar fondasi terpenting dari SELECT MySQL dasar. Ini poin-poin utamanya:
- ▸ SELECT * mengambil semua kolom — praktis tapi boros di production
- ▸ SELECT kolom1, kolom2 untuk memilih kolom spesifik yang kamu butuhkan
- ▸ AS memberi alias agar output lebih mudah dibaca dan dipahami
- ▸ DISTINCT menghilangkan duplikasi nilai dalam hasil query
- ▸ Kamu bisa langsung melakukan kalkulasi matematika di dalam SELECT
Ingat: setiap developer handal pernah mulai dari SELECT * FROM tabel_pertamaku. Yang membedakan mereka bukan bakat bawaan — tapi konsistensi latihan. Kamu sudah satu langkah lebih dekat! ๐ช
๐ฃ️ Punya pertanyaan atau mau share hasilnya?
Tinggalkan komentar di bawah! Jangan lupa share artikel ini ke teman yang lagi belajar SQL bareng kamu, dan bookmark halaman ini biar nggak ketinggalan artikel selanjutnya. ๐
No comments:
Post a Comment