subquery dan query lanjut_ nurlaila fitriasari

Upload: fithree-funokoshi

Post on 12-Oct-2015

72 views

Category:

Documents


0 download

TRANSCRIPT

  • LAPORAN PRAKTIKUM BASIS DATA LANJUT I

    Oleh

    Delvia Wulan Sari 11120013

    Nur Laila Fitriasari 11120027

    Firman Fajrin 11120015

    Fakultas Teknik

    Program Studi Teknik Informatika

    Universitas Wijaya Kusuma Surabaya

    2014

  • Tujuan

    Mahasiswa dapat mengetahui tentang teori Subquery

    Mengerti tentang penggunaan subquery

    Memahami penggunaan query Where,Like,Desc / Asc

    Mampu menerapkan penggunaan subquery dan query tingkat lanjut

  • Pendahuluan

    1.1.Subquery

    Subquery merupakan query didalam query atau perintah select yang berada didalam

    perintah select lainnya. Subquery terdiri dari dua perintah select. Perintah select pertama disebut

    Outer Query atau Query induk sedangkan query yang berada pada klausa where disebut inner

    query. Inner query akan dikerjakan terlebih dahulu dan hasilnya akan digunakan sebagai

    pembnding pada pencarian data di klausa where outer query. Subquery dapat digunakan untuk

    menghasilkan nilai-nilai bagi outer query pada saat kriteria pencarian yang dibutuhkan tidak

    diketahui.

    Subquery (disebut juga subselect atau nested select/query atau inner-select) adalah query

    SELECT yang ada di dalam perintah SQL lain,misalnya SELECT,INSERT,UPDATE,atau

    DELETE.

    Sintaks formal subquery bisa ditulis sebagai berikut:

    SELECT A1, A2,..,An

    FROM r1,r2,r3,.,rm

    WHERE P

    Contoh : perintah untuk menampilkan data pada table jenis_film yang mana data pada kolom

    jenis-nya tercantum pada table film menggunakan IN:

    SELECT * FROM JENIS_FILM WHERE JENIS IN (SELECT JENIS FROM FILM);

    atau menggunakan EXISTS

    SELECT * FROM JENIS_FILM WHERE EXISTS(SELECT * FROM FILM WHERE

    HARGA > 2000);

    Pada contoh di atas : SELECT JENIS FROM FILM disebut subquery, sedangkan : SELECT *

    FROM JENIS _FILM berkedudukan sebagai query . perhatikan, terdapat data jenis dan harga

    pada table jenis_film yang tidak ditampilkan. Hal ini disebabkan data pada kolom jenis tidak

    terdapat pada kolom jenis di table film.

    Subquery dapat diklasifikasikan ke dalam tiga jenis yaitu: scalar,multiple-row,dan

    multiple-column.

    a. Scalar Subquery

    Subquery baris tunggal (scalar) hanya mengembalikan hasil satu baris data. Bentuk

    subquery ini diperlihatkan seperti Gambar 1.

  • Subquery baris tunggal dapat menggunakan operator baris tunggal =,>,>=,

  • WHERE nama_kolom operator hasil;

    1.2. Fungsi Like

    Operator LIKE digunakan untuk mencari pola yang telah ditentukan dalam kolom SQL

    LIKE Syntak

    SELECT nama_kolom (s)

    FROM nama_tabel

    WHERE nama_kolom LIKE pattern;

  • Percobaan

    Pembuatan table database pada SQL dan Oracle

    Pada SQL

    Buat table dataaksesoris dengan kd_aksesoris sebagai primarykey Setelah itu masukan

    dataaksesoris

    Kemudian panggil dataaksesoris dengan perintah select * from dataaksesoris, maka akan muncul

    seperti pada gambar dibawah ini :

    Buat table dataHP dengan kd_hp sebagai primarykey Setelah itu masukan dataHP

  • Kemudian panggil dataHP dengan perintah select * from dataHP, maka akan muncul seperti

    pada gambar dibawah ini :

    Buat table datakaryawan dengan id_karyawan sebagai primarykey Setelah itu masukan

    datakaryawan

    Kemudian panggil datakaryawan dengan perintah select * from datakaryawan, maka akan

    muncul seperti pada gambar dibawah ini :

    Buat table data namatoko dengan id_toko sebagai primarykey Setelah itu masukan datatoko

  • Kemudian panggil data namatoko dengan perintah select * from namatoko, maka akan muncul

    seperti pada gambar dibawah ini :

    Buat table datapemilik dengan id_pemilik sebagai primarykey Setelah itu masukan datapemilik

    Kemudian panggil datapemilik dengan perintah select * from datapemilik, maka akan muncul

    seperti pada gambar dibawah ini :

  • Buat table datasupplier dengan id_supplier sebagai primarykey Setelah itu masukan datasupplier

    Kemudian panggil datasupplier dengan perintah select * from datasupplier, maka akan muncul

    seperti pada gambar dibawah ini :

    Menampilkan scalar subquery

    Menyeleksi data karyawan dari data pemilik dimana id_karyawan yang dipanggil 9939

    Maka hasilna seperti gambar dibawah ini :

    Menampilkan fungsi like

    Dengan menyeleksi dataHP dimana OS_HP yang dicari dengan inisial S

    Maka hasilnya seperti berikut :

  • Menampilkan fungsi where

    Dengan menyeleksi data aksesoris dimana nama_aksesoris yang dicari adalah hedseat sony

    Maka hasilnya seperti pada gambar berikut :

  • Pada ORACLE

    Membuat table datakaryawan dengan id_karyawan sebagai primarykey

    Setelah itu masukkan datakaryawan

    Kemudian panggil datakaryawan dengan perintah select * from datakaryawan

    Maka hasilnya sebagai berikut :

    Membuat table datapulsa dengan id_pulsa sebagai primarykey

  • Setelah itu masukkan datapulsa

    Kemudian panggil datapulsa dengan perintah select * from datapulsa

    Maka hasilnya sebagai berikut :

  • Membuat table namatoko dengan id_toko sebagai primarykey

    Setelah itu masukkan data namatoko

  • Kemudian panggil namatoko dengan perintah select * from namatoko

    Maka hasilnya sebagai berikut:

    Membuat table datacustomer dengan id_customer sebagai primarykey

    Setelah itu masukkan datacustomer

    Kemudian panggil datacustomer dengan perintah select * from datacustomer

  • Maka hasilnya sebagai berikut:

    Membuat table dataHP dengan kd_HP sebagai primarykey

    Setelah itu masukkan dataHP

    Kemudian panggil dataHP dengan perintah select * from dataHP

    Maka hasilnya sebagai berikut

    Membuat table dataaksesoris dengan kd_aksesoris sebagai primarykey

  • Setelah itu masukkan dataaksesoris

    Kemudian panggil dataaksesoris dengan perintah select * from dataaksesoris

    Maks hasilnya sebagai berikut :

    Menggunakan multiple row subquery dengan operator Any

    Menampilkan harga aksesoris diatas harga 40000 dengan cara menyeleksi data aksesoris daridata

    aksesoris dimana harga aksesoris lebih dari 40000

    Maka hasilnya sebagai berikut :

  • Menampilkan data pegawai yang diinginkan dengan menyeleksi id_customer dari datacustomer

    dimana yang memiliki id 4416

    Maka hasilnya sebagai berikut :

    Menampilkan jenis kelamin yang sama dengan id yang ditulis dengan menyeleksi jenis kelamin

    karyawan dari data karyawan dimana id karyawan dimulai dari 9901

    Maka hasilnya sebagai berikut :

  • Kesimpulan

    Subquery merupakan query didalam query atau perintah select yang berada didalam

    perintah select lainnya. Subquery terdiri dari dua perintah select. Perintah select pertama disebut

    Outer Query atau Query induk sedangkan query yang berada pada klausa where disebut inner

    query. Inner query akan dikerjakan terlebih dahulu dan hasilnya akan digunakan sebagai

    pembnding pada pencarian data di klausa where outer query. Subquery dapat digunakan untuk

    menghasilkan nilai-nilai bagi outer query pada saat kriteria pencarian yang dibutuhkan tidak

    diketahui.