1.1 SQL SELECT
Perintah SELECT digunakan untuk menampilkan informasi dari basis data. Perintah SELECT dapat melakukan:
- Projection dengan cara :
- Pilih kolom dalam suatu table yang dikembalikan oleh sebuah query.
- Pilih kolom sebanyak yang Anda butuhkan.
- Pilih kolom dalam suatu table yang dikembalikan oleh sebuah query.
- Selection dengan cara :
- Pilih baris dalam suatu table yang dikembalikan oleh sebuah query.
- Beberapa criteria dapat digunakan untuk membatasi baris yang ditampilkan.
- Pilih baris dalam suatu table yang dikembalikan oleh sebuah query.
- Joining dengan cara :
- Kumpulan data yang disimpan dalam table-tabel yang berbeda dengan membuat link diantara table.
- Kumpulan data yang disimpan dalam table-tabel yang berbeda dengan membuat link diantara table.
1.2 Perintah SELECT Dasar
Syntax:
SELECT * |{[DISTINCT] column | expression [alias] …..}
FROM table;
- Perintah atau kata kunci yang harus ada:
- SELECT : Menspesifikasi kolom yang akan ditampilkan.
- FROM : Mengidentifikasi table yang mengandung kolom yang terdaftar dalam SELECT.
- SELECT : Menspesifikasi kolom yang akan ditampilkan.
- Dalam syntax:
- SELECT : merupakan daftar dari satu atau lebih kolom.
- * : menyeleksi semua kolom.
- DISTINCT : menghilangkan duplikasi data.
- Column|expression : menyeleksi kolom atau ekspresi yang dimaksud.
- Alias : memberikan heading yang berbeda kepada kolom terseleksi.
- FROM table : menspesifikasi table yang mengandung kolom yang ingin ditampilkan.
- SELECT : merupakan daftar dari satu atau lebih kolom.
Contoh:
Menampilkan department id dan location id dari table departments
Syntax: SELECT department_id, location_id FROM departments;
1.3 Menulis Perintah-Perintah SQL
- Perintah-Perintah SQL tidak case sensitive.
- Perintah-Perintah SQL dapat dimasukkan ke dalam satu atau lebih baris.
- Kata kunci tidak dapat dipisah pada baris yang berbeda atau pun disingkat.
- Klausa biasanya ditempatkan pada baris yang berbeda untuk mempermudah pembacaan dan mempermudah pengeditan.
- Kata kunci ditulis dalam huruf besar.
- Nama table dan kolom ditulis dalam huruf kecil.
Operator | Fungsi |
+ | Penjumlahan |
- | Pengurangan |
* | Perkalian |
/ | Pembagian |
- Anda dapat menggunakan operator aritmatika dalam semua klausa dari suatu perintah SQL, kecuali klausa FROM.
- Jika tipe datanya adalah DATE dan TIMESTAMP, Anda hanya dapat menggunakan operator pengurangan dan penjumlahan saja.
- Ketentuan penghitungan:
- Perkalian dan pembagian dilakukan terlebih dahulu.
- Jika operator-operator aritmatika dalam satu ekspresi memiliki kedudukan yang sama, maka dihitung sesuai urutan dari kiri ke kanan.
- Anda dapat menggunakan tanda kurung () untuk menekankan perhitungan yang ingin Anda lakukan terlebih dahulu.
- Perkalian dan pembagian dilakukan terlebih dahulu.
- Null adalah sebuah nilai yang tidak tersedia, tidak berguna, tidak diketahui, atau tidak dapat diaplikasikan.
- Null berbeda dengan nilai nol atau spasi kosong (nol adalah angka dan spasi kosong adalah karakter).
- Kolom dari data apapun dapat mengandung nilai null.
- NOT NULL dan PRIMARY KEY merupakan batasan penghindar penggunaan null dalam kolom.
- Jika ada nilai kolom yang null dalam suatu ekspresi aritmatika, maka hasilnya juga null.
- Jika Anda membagi suatu bilangan dengan null, maka hasilnya juga null atau tidak terdefinisikan.
- Alias adalah penamaan kembali suatu juduk kolom.
- Berguna dalam melakukan proses perhitungan.
- Kata AS dapat menjadi kata kunci diantara nama kolom dan alias.
- Membutuhkan tanda kutip ("……..") jika mengandung spasi atau karakter special atau jika kasusnya sensitive.
Contoh:
SELECT last_name||job_id AS "Employees"
FROM employees;
- Operator pengabungan(||) berfungsi untuk menghubungkan kolom ke kolom lainnya, ekspresi aritmatika, atau nilai konstan untuk membuat suatu ekspresi karakter.
- Ketika terjadi penggabungan, maka terbentuklah suatu kolom tunggal yang lain yang mana merupakan hasil penggabungannya.
- Kata kunci AS dapat mempermudah pembacaan klausa SELECT
- Jika Anda menggabungkan suatu nilai null dengan string karakter maka hasilnya adalah suatu karakter.
- Literal adalah karakter, bilangan, atau tanggal yang termasuk dalam Perintah SELECT.
- Literal bukanlah sebuah nama kolom atau pun sebuah alias kolom.
- Literal tecetak untuk setiap baris yang kembali.
- String literal dari teks free format dapat dimasukkan dalam hasil query dan diperlakukan sama sebanyak kolom dalam daftar SELECT.
- Tanggal dan literal karakter harus disertai dengan tanda kutip ('………');
- Operator tanda kutip alternative digunakan jika ada suatu literal yang mengandung tanda kutip tunggal.
- Pilih pembatas yang Anda perlukan, seperti: single-byte atau multi-byte, atau bisa juga pasangan-pasangan karakter seperti: { },[ ],( ),< >.
- Jika Anda tidak memberikan suatu indikasi untuk membatasi duplikasi baris, maka akan terjadi hasil yang berulang karena tidak ada pembatasan terhadap duplikasi baris.
- Untuk membatasi duplikasi baris dalam hasil query, maka masukkan kata kunci DISNTICT ke dalam klasusa SELECT tepat setelah kata kunci SELECT.
Syntax: DESC [RIBE] tablename
- Dalam syntax di atas, tablename adalah nama table yang ada yang dapat diakses oleh pengguna.
- Gunakan perintah DESCRIBE untuk menampilkan struktur table.
- Perintah tersebut akan menampilkan nama kolom dan tipe data, dan sekaligus juga akan menunjukkan kepada Anda apakah suatu kolom benar-benar memiliki data atau tidak (singkatnya, menunjukkan kolom NOT NULL).
Tipe Data | Penjelasan |
NUMBER( p,s ) | Nilai maksimumnya adalah p dengan nilai decimal s |
VARCHAR2 ( s ) | Panjang variable nilai karakter dari ukuran maksimum s |
DATE | Tanggal dan waktu di antara 1, 4712 Januari SM dan 31, 9999 Desember |
CHAR ( s ) | Panjang tetap nilai karakter dari ukuran s |
Untuk latihan mengenai SELECT, Anda dapat menuju posting mengenai Latihan Basdat Select