SQL — SELECT Statement — Beginner
SQL — read: (es kiu el) atau sikuel — Structured Query Language adalah sebuah bahasa komputer yang sederhana dan menjadi standar untuk berkomunikasi dengan sistem database relasional. Standardisasi SQL sudah ada sejak tahun 1986 dan diinisiasi oleh ANSI (American National Standard Institute). SQL merupakan bahasa yang sederhana karena cukup mudah dipelajari oleh orang awam (pemula seperi kita), karena cukup mengerti dengan baik pengolahan data dengan aplikasi Microsoft Excel. SQL dirancang agar terdapat bahasa komunikasi yang standar dan seragam untuk berbagai produk sistem database — dari vendor-vendor yang berbeda. Dari beberapa jenis sistem database di dunia saat ini, yang paling populer adalah sistem database relasional atau Relational Database Management System (RDBMS). RDBMS menggunakan bahasa SQL untuk melakukan komunikasi. Produk-produk RDBMS yang ada di pasaran saat ini diantaranya, yaitu:
- Microsoft SQL Server, Oracle,
- MySQL, MariaDB, PostgreSQL,
- IBM DB2, Microsoft Access, dan lain-lain.
Disini kita akan memakai produk MariaDB untuk berlatih. Sebagai penyimpan data, sistem database relasional memiliki struktur hirarki objek penyimpanan yaitu — databese, table, column (field)
Gambar berikut adalah contoh suatu table dengan nama ms_produk (terdapat 4 column : no_urut | kode_produk | nama_produk | harga| dimana penulisan dalam code editor harus sesuai (case sensitive))
Data ini akan digunakan dalam course hingga selesai :)
Let’s begin —
SELECT adalah bagian perintah SQL yang digunakan untuk mengambil data dari RDBMS. Konstruksi perintahnya bisa sangat kompleks tapi juga sangat bermanfaat. Perintah ini juga disebut sebagai query SQL.
note — Tanda ; (titik koma) adalah tanda yang menyatakan akhir dari perintah SELECT atau SQL lain —
Jika perintah diatas dijalankan, maka output yang dihasilkan yaitu seluruh data yang ada dalam ms_produk.
— Mengambil Satu Kolom dari Table —
Berikut adalah contoh query untuk mengambil kolom nama_produk saja yaitu:
Ketik perintah tersebut pada code editor dan klik tombol Run, sistem database akan menampilkan data sebagai berikut.
— Mengambil Lebih dari Satu Kolom —
Table ms_produk memiliki lebih dari satu kolom data. Untuk mengambil kolom lainnya kita perlu menuliskan tiap kolom yang ingin ditampilkan dipisahkan dengan tanda koma, seperti yang dinyatakan oleh syntax berikut ini untuk dua kolom.
Ketik perintah tersebut pada code editor dan klik tombol Run, sistem database akan menampilkan data dua kolom yaitu kode_produk dan nama_produk.
— Membatasi Pengambilan Jumlah Row Data —
Selain pembatasan kolom, kita bisa membatasi jumlah baris data yang diambil. Untuk tiap produk RDBMS, caranya agak berbeda-beda. Untuk MySQL, kita menggunakan LIMIT. Secara umum syntaxnya dinyatakan oleh:
sebagai contoh, syntax kita ubah menjadi code berikut.
Klik tombol Run, maka akan terlihat hasil tiga data pertama yang ditampilkan seperti berikut.
Sederhana sekali bukan:) — NEXT —
Selanjutnya akan diperkenalkan variasi penggunaan nama table dan kolom pada bagian SELECT, yaitu.
- Prefix, dimana kita akan menambahkan nama table di depan nama kolom.
- Alias, dimana kita memberikan alias atau nama lain untuk table maupun kolom.
— Menggunakan Prefix pada Nama Kolom —
Penulisan nama kolom yang lengkap sebenarnya perlu mencantumkan nama table di depan nama kolom tersebut, dengan tanda penyambung berupa tanda titik.
Penggunaan nama lengkap prefix ini akan sangat berguna ketika kita ingin mengidentifikasi data dari beberapa table — yang akan kita pelajari pada course SQL untuk topik JOIN.
— Menggunakan Alias pada Kolom —
Kita dapat merubah identitas nama kolom yang diambil dengan SELECT dengan menggunakan keyword AS. Ini dinamakan alias.
Berikut adalah contoh untuk merubah nama kolom dari kode_produk menjadi product_code dari table ms_produk.
atau tanpa penggunaan keyword AS, syntax yang digunakan yaitu:
Output yang dihasilkan oleh syntax tersebut adalah sebagai berikut.
— Menggabungkan Prefix dan Alias —
Prefix dan alias dapat digunakan secara bersamaan seperti yang dinyatakan berikut ini.
Berikut adalah contoh penggunaan prefix nama table dan alias untuk kolom nama_produk.
Jika berjalan dengan lancar, maka akan muncul hasil berikut.
— Menggunakan Alias pada Table —
Selain kolom, nama alias juga bisa digunakan untuk table dengan menggunakan keyword AS setelah nama table. Dan, keyword ini juga bisa digunakan atau tidak.
— Prefix dengan Alias Table —
Jika menggunakan alias table, maka nama prefix juga bisa menggunakan alias, seperti yang ditunjukkan berikut ini.
note : Alias dapat digunakan dengan keyword AS atau tanpa keyword AS setelah nama kolom dan table.
— Menggunakan WHERE —
WHERE dari SELECT digunakan untuk filter data berdasarkan kondisi tertentu. Untuk syntax lengkapnya adalah sebagai berikut.
Supaya lebih paham, yuk langsung contohkan dengan perintah berikut.
— WHERE : Menggunakan Operand OR —
Operator ini digunakan untuk menampilkan 2 data column dengan keyword yang berbeda masing-masing sekaligus yaitu dengan syntax sebagai berikut.
Jika dipraktekkan pada tabel ms_produk maka digunakan logika sederhana, jadi kita perlu mengambil data dengan kondisi nama_produk itu bernilai ‘Gantungan Kunci DQLab’ ATAU ‘Tas Travel Organizer DQLab’.
— WHERE : Filter untuk Angka —
WHERE tidak terbatas untuk tipe data teks saja tapi malah umumnya untuk angka. Berikut adalah contoh filter dimana kolom harga harus memiliki nilai di bawah 50000.
— WHERE : Menggunakan Operand AND—
Jika sebelumnya kita bahas mengenai OR, maka kita juga bisa menggunakan operand AND agar dua atau lebih kondisi terpenuhi semuanya. Jika salah satu kondisi tidak terpenuhi, data tidak akan diambil. Secara umum syntaxnya diilustrasikan berikut ini.
Berikut adalah contoh filter dimana kolom harga harus memiliki nilai di bawah 50000 dimana produk yang ingin ditampilkan adalah ‘Gantungan Kunci DQLab’.
“Lalu jika kita mengubah tanda < menjadi tanda >, menurut kalian apa output yang dihasilkan? “
Jika diperhatikan terdapat syntax yang tidak saya berikan contoh nih :) Kemudian untuk pertanyaan diatas apakah kamu tahu jawabannya?. Untuk pemula seperti saya mungkin akan sulit ketika membaca saja (read: hanya teori). Oleh karena itu, yuk kamu juga praktekkan di live code editor by DQLab Academy.
— THE END —
“You don’t understand anything until you learn it more than one way” — Marvin Minsky