4

Click here to load reader

Modul4

  • Upload
    solikin

  • View
    232

  • Download
    7

Embed Size (px)

DESCRIPTION

hhhh

Citation preview

  • Praktikum

    4 FUNGSI DALAM SQL

    Tujuan :

    Praktikan mampu untuk memahami dan menguasai fungsi-fungsi SQL

    Alat dan Bahan :

    1. Buku literatur mengenai sistem database, terutama yang menggunakan DBMS SQL Server

    2000, khususnya mengenai transactsql.

    2. Modul praktikum.

    Landasan Teori :

    Aritmetik

    Penghitungan aritmatika dapat dilakukan dengan menggunakan * / + - seperti umumnya.

    Kelompok Nilai

    Fungsi AVG, Max, MIN, SUM, COUNT adalah fungsi yang memproses table dengan kualifikasi

    tertentu.

    1. AVG

    Mencari rata-rata

    SELECT AVG(field_numerik) FROM nama_tabel

    Nilai perbandingan adalah hasil dari query baru (yang disebut sebagai subquery).

    Contoh :

    SELECT * FROM ambil_kuliah_XXX WHERE nilai_uas>(SELECT AVG(nilai_uas) FROM ambil_kuliah_XXX)

    2. MAX

    Mencari maksimum

    SELECT MAX(nilai_uas) FROM ambil_kuliah_XXX

    3. MIN

    Mencari minimum

    SELECT MIN(nilai_uas) FROM ambil_kuliah_XXX

  • 4. COUNT

    Menghitung record dengan kualilfikasi tertentu. COUNT(*) menyatakan hitung seluruh record

    yang berlaku.

    SELECT COUNT(*) FROM mahasiswa_XXX

    5. SUM

    Menjumlah nilai dari kolom tertentu

    SELECT SUM(nilai_uas) FROM ambil_kuliah_XXX

    GROUP BY

    Group By Menyeleksi himpunan yang dihitung berdasarkan fungsi spesifik seperti AVG, COUNT

    atau lainya.

    SELECT npm,COUNT(*) FROM ambil_kuliah GROUP BY npm

    GROUP BY HAVING

    HAVING berlaku untuk kelompok query Group By dan berfungsi seperti WHERE. Hanya group

    yang mempunyai kriteria tersebut yang akan diproses (pada where yang diproses adalah setiap

    record dalam tabel). Berikut adalah daftar mahasiswa yang mempunyai nilai uas rata-rata

    diatas 80 :

    SELECT npm,AVG(nilai_uas) FROM ambil_kuliah GROUP BY npm HAVING AVG(nilai_uas)>80

    JOIN

    Join adalah teknik yang digunakan untuk mengakses lebih dari satu tabel dan menggabungkan

    hasilnya. Perhatikan tabel sesi di bawah ini

    SELECT npm, mahasiswa_XXX.nama, grade FROM ambil_kuliah_XXX, mahasiswa_XXX WHERE ambil_kuliah_XXX.npm=mahasiswa_XXX.npm

    perintah diatas dapat juga di tulis menggunakan INNER JOIN

    SELECT nrp, mahasiswa_XXX.nama, grade FROM ambil_kuliah_XXX INNER JOIN mahasiswa_XXX ON ambil_kuliah_XXX.npm=mahasiswa_XXX.npm

  • Menggunakan Alias

    Alias digunakan untuk menyederhanakan tulisan, agar tidak terlalu panjang.

    SELECT npm, mahasiswa_XXX.nama, grade FROM ambil_kuliah_XXX, mahasiswa_XXX WHERE ambil_kuliah_XXX.npm=mahasiswa_XXX.npm

    Penulisan dapat disederhanakan menjadi :

    SELECT npm, M.nama,grade FROM ambil_kuliah_XXX A ,mahasiswa_XXX M WHERE A.npm = M.npm

    Alias dapat juga di berikan pada INNER JOIN :

    SELECT npm, M.nama, grade FROM ambil_kuliah_XXX A INNER JOIN mahasiswa_XXX B ON A.npm = B.npm

    Tugas Pendahuluan Praktikum

    1. Apa yang dimaksud dengan subquery ?

    2. Kapan alias digunakan ?

    3. Jelaskan kembali mengenai JOIN menggunakan pemahaman sendiri dan sebutkan jenis-jenis

    join yang dapat dilakukan pada Ms. SQL Server 2000 (cari selain yang terdapat pada modul).

    4. Kenapa data yang akan diisikan pada foreign key field harus ada terlebih dahulu pada

    primary key field yang diacu?

    Percobaan

    Sebelum memulai, aktifkan Tools Query Analyzer

    XXX adalah 3 digit terakhir NPM anda.

    Restore data yang telah dihasilkan dari praktikum sebelumnya.

    Percobaan 1 : Buat tabel asisten_XXX dengan ketentuan :

    asisten_XXX(kd_prak,npm,th_ajaran1,th_ajaran2,jumlah_jam,honor)

    kd_prak char 8

    npm char 8

    th_ajaran1 smallint

    th_ajaran2 smallint

    jumlah_jam smallint

    honor money

    kd_prak merupakan foreign key yang mengacu pada tabel mata_kuliah_XXX

    npm merupakan foreign key yang mengacu pada tabel mahasiswa_XXX

    Isi data pada tabel asisten_XXX :

    kd_prak npm th_ajaran1 th_ajaran2 jumlah_jam honor

    TPL102 03010006 2008 2009 8 80000

    TPL111 03010007 2008 2009 8 80000

    TPL116 03010006 2007 2008 7 70000

    TPL102 03010026 2006 2007 8 80000

    TPL111 03010026 2008 2009 5 50000

  • Percobaan 2 : Tambahkan 10% honor untuk mereka yang mempunyai honor dibawah rata-

    rata.

    Percobaan 3 : Cari asisten yang honornya antar 70.000 sampai dengan 100.000

    Percobaan 4 : Tampilkan asisten yang honornya lebih kecil dari rata-rata.

    Percobaan 5 : Tampilkan daftar honor asisten dan kurangi dengan pajak penghasilan 15%

    Percobaan 6 : Tampilkan data asisten secara lengkap (npm,nama,jenis kelamin,alamat) yang

    honornya paling kecil

    Percobaan 7 : Tampilkan jumlah asisten yang honornya diatas rata-rata

    Percobaan 8 : Tampilkan daftar asisten yang honornya diatas rata-rata