Pages

Rabu, 19 November 2014

Subquery dan Indeks



LANDASAN TEORI

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:
  • Meng-copy data dari satu tabel ke tabel lain
  • Menerima data dari inline view
  • Mengambil data dari tabel lain untuk kemudian di update ke tabel yang dituju
  • 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  0perator (subquery);
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;
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);

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’));
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.



HASIL PRAKTIKUM



1. Menampilkan nama fakultas dan jumlah mahasiswa yang mampunyai 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!



KESIMPULAN
  •  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




DAFTAR PUSTAKA

 -  http://beginner-sql-tutorial.com/id/sql-subquery.htm
 -  Modul Praktikum Desain Basis Data
 - dba-oracle.com/t_oracle_subquery_factoring.htm




1 komentar:

  1. Casinos Near Me: Las Vegas Casinos Near Me - JTM Hub
    The Casinos Near 여수 출장안마 Me - 성남 출장안마 Las Vegas · The Palms 대전광역 출장마사지 Casino 제주 출장안마 · Best Western · Bellagio Casino · Wynn Casino · Wynn Palace. 광주광역 출장마사지

    BalasHapus

 

Blogger news

Blogroll

About