Perhatian, bahan ini menggunakan Oracle iSQL*Plus, untuk mendownload klik disini.
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.
Selection dengan cara :
- Pilih baris dalam suatu table yang dikembalikan oleh sebuah query.
- Beberapa criteria dapat digunakan untuk membatasi baris yang ditampilkan.
Joining dengan cara :
- 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;
Anda dapat menggunakan perintah SELECT untuk menampilkan kolom-kolom tertentu dari table dengan cara menspesifikasikan nama kolom, dan dipisahkan dengan tanda koma (,).
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.
1.4 Operator Aritmatika
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.
1.5 Nilai Null
- 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.
1.6 Menggunakan Alias Kolom
- 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.
1.7 Operator Penggabungan
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.
1.8 String-String Karakter Literal
- 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 ('………');
1.9 Operator Tanda Kutip Alternatif
- 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: { },[ ],( ),< >.
Contoh:
SELECT department_name||
q'[, it's assigned Manager Id: ]'
|| manager_id AS "Department And Manager"
FROM departments;
1.10 Duplikasi Baris
- 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.
Contoh
SELECT DISTINCT department_id, location_id FROM departments;
1.11 Menampilkan Struktur Tabel
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