Agus
Luqmanul K (13650128)
Sub
Query dan Index
Assalamualaikum
para kaula Muda.,.,
Oke ketemu lagi diacara yang sama
yaitu laporan praktikum DBD kali ini kita akan membahas bab yang akan membuat
kita berfikir lebih dalam tentang sql yaitu “SUB QUERY DAN INDEKS”semoga
tidak jenuh
Langsung
saja kita ke dasar teorinya.,.
A. SUB
QUERY
Sub Query adalah query nested
atau sebuah query yang berada di dalam query. sub query merupakan pernyataan
SELECT yang merupakan bagian dari pernyataan INSERT dan SELECT. Sub Query
digunakan untuk menangani masalah dalam query yang
kompleks, contohnya ketika Anda tahu bagaimana untuk mencari nilai
menggunakan pernyataan SELECT, tetapi tidak tahu nilai yang tepat dalam
database.
adapun kegunaan sub query
yang lain adalah:
a . Meng-copy
data dari satu tabel ke tabel lain
b. Menerima
data dari inline view
c. Mengambil
data dari tabel lain untuk kemudian di update ke tabel yang dituju
d. Menghapus
baris dari satu tabel berdasarkan baris dari tabel lain
Sub Query dapat ditempatkan
bersama klausa where, having, dan from bersama dengan operator
perbandingan =, in, not, in, <>, <any>, >=, dan <=.
penggunaannya dapat diterapkan pada pernyataan SELECT, UPDATE, DELETE, dan
INSERT.
Select nama_kolom from
nama_tabel where nama_kolom operator (subquery);
B. SELECT
INTO Statement
Merupakan query SQL yang
digunakan untuk menduplikasi informasi dari tabel satu ke tabel yang lain tanpa
membuat tabel sebelumnya
SELECT * INTO newtable FROM
table1;
C. INDEKS
Indeks berguna untuk
mepersingkat pencarian data dalam database dengan meng-indeks (memberi keyword
unik) pada kolom tertentu. sehingga proses pencarian lebih effisien. untuk
database skala kecil penggunaan indeks, dampaknya belum terasa. jika
menggunakan database skala besar, penggunaan indeks akan sangat membantu sekali
dalam proses pencarian data. indeks sebaiknya jangan digunakan pada tabel
atau kolom yang sangat jarang atau tidak pernah diakses.
cara membuat indeks sebagai
berikut:
CREATE INDEX nama_index ON
nama_tabel (nama kolom);
Ada pula query UNIQUE
INDEKS, digunakan untuk mencegah duplikasi nilai yang terdapat dalam
tabel. Jadi dengan adanya unique index berarti pembaca tidak dapat
meng-insert nilai yang sama dalam sebuah tabel.
CREATE UNIQUE INDEX
nama_index ON nama_tabel (nama kolom);
D. CHECK
Query check berfungsi untuk
membatasi inputan agar sesuai dengan ketentuan admin. sebagai contoh
misalkan kita ingin agar kolom gender yang terdiri dari satu karakter hanya
memiliki dua pilihan karakter yaitu M (male) atau F (Fimale) ini
dapat kita seting dengan menggunakan CHECK. Dengan menggunakan CHECK maka
sebuah kolom hanya bisa diisi dengan data yang memenuhi kriteria dalam
CHECK.
alter table nama_tabel add
check (nama_kolom in (‘kondisi’,’kondisi’));
E. TRIM
Trim digunakan apabila dalam
suatu data ada spasi yang tidak diperlukan. dengan query trim, kita dapat
membersihkan spasi yang tidak digunakan tersebut. ada tiga jenis fungsi trim:
RTRIM : digunakan untuk
membersihkan spasi kosong yang ada di bagian kanan (Right) String.
LTRIM : digunakan untuk
membersihkan spasi kosong yang ada di bagian kiri (Left) String.
TRIM : digunakan untuk
membersihkan spasi kosong yang ada di bagian kiri, kanan, maupun tengah
String
Select trim(nama_kolom) from
nama_tabel;
Untuk penggunaan query trim,
kita dapat menentukan karakter yang akan dihapus, bukan hanya spasi saja.
dengan menambahkan opsi tersebut pada struktur query trim:
LEADING : merupakan opsi
untuk menghilangkan karakter terpilih yang ada disebelah kiri. Parameter
Leading diartikan sebagai sufik dari karakter yang ada.
TRAILING : merupakan opsi
untuk menghilangkan karakter terpilih yang ada disebelah kanan String.
Parameter Trailing diartikan sebagai sufik dari karakter yang ada.
BOTH : merupakan opsi yang
dapat menangani parameter Leading maupun Trailing.
berikut struktur query nya:
Select trim(LEADING ‘karakter, misal : -’ from
nama_kolom) from nama_tabel;
Tugas
praktikum
1.
Menampilkan
nama fakultas dan jumlah mahasiswa yang mempunyai ketentuan nama fakultas yang
dimunculkan dengan jumlah mahasiswanya terkecil.
2.
Tampilkan
nama mahasiswa, nama fakultas, alamat dengan syarat nama fakultas sama dengan
edi dan alamatnya tidak sama dengan luki!
3.
Buatlah
index di tabel mahasiswa(alamat). Kemudian buat lagi index yang bersifat unik
pada tabel fakultas(fak_nama) kemudian amati perbedaannya ketika memasukkan
data yang sama!
4.
Buat
kolom nama di mahasiswa menjadi unik dan inputkan 2 data yang sama. Kemudian
amati perbedaannya !
5.
Pindahkan
data dari tabel mahasiswa, fakultas ambil kolom nim, nama mahasiswa, alamat,
nama fakultas ke tabel baru yang dinamai „tabel
identitas‟.
6.
Buatlah
contoh penggunaan check pada sub bab pembahasan CHECK. Kemudian masukkan
beberapa data baik yang sesuai dengan criteria check maupun yang bukan dan
amati perbedaannya.
7. Inputkan data di tabel mahasiswa dimana pada
kolom nama sebelum inputkan karakter dahulukan dengan spasi dan di akhiri
dengan tanda “+” seperti berikut : “ andi cahyono++++”. kemudian munculkan
seluruh data dan hilangkan spasi didepan!
8. Munculkan data mahasiswa dengan hilangkan
karakter “+” di akhir data dan karakter “a” di awal kata pada kolom nama!
Perbandingan
Kali ini
terdapat perbedaan query antara dua sql yang telah diprak tekkan,yaitu pada bagian
trim. trim
yang menggunakan spasi pada kolom yang akan di jalankan tidak berpengaruh pada
postgreSQL. tetapi pada MySQL, jika kita menyelipkan spasi antara perintah trim
dengan kolom yang akan di eksekusi dengan perintah trim, maka terjadi keslahan.
karena spasi trim akan diartikan sebagai fungsi. penggunaan trim tidak
boleh dipisahkan dengan nama kolom yang akan dieksekusi.
Kesimpulan
subquery
adalah query dalam query yang digunakan untuk menghapus baris dari satu tabel
berdasarkan baris tabel lain, menyelesaikan pesoalan dimana terdapat suatu
nilai yang tidak diketahui
select into digunakan untuk menduplikat
tabel
indeks
digunakan untuk meng-effisienkan pencarian data
kolom
unique, digunakan agar data yang diinputkan tidak boleh sama dalam satu kolom
check
berfungsi untuk melakukan pembatasan nilai masukan dalam sebuah kolom
trim
digunakan untuk menghapus spasi yang tidak diperlukan
Kritik
Saran
Sebaiknya
kita sesering mungkin latihan-latihan menggunakan sub query dengan berbagai
kasus maka kita akan lebih mudah memahami seluk beluk data dan dengan praktik
yang serig dilakukan akan membuat kita lebih jago dalam pemrogaman data base.
Manfaat
Semoga dengan membaca ini kita semua
dapat menambah ilmu dan bagi yang sudah mengetahui dan lebih jago semoga dapat
memngingatkan kembali pelajaran yang sudah prnah dipelajari sebagai pengingat.
Daftar
Pustaka
http://tutorial-bor.blogspot.com/2011/07/pengertian-index-bagian-1.html
http://beginner-sql-tutorial.com/id/sql-index.htm
http://risnotes.com/2011/12/subqueries/
modul praktikum desain basis
data 2013 Teknik Informatika UIN malang













Tidak ada komentar:
Posting Komentar