Modul 3
Modul 3
0
FEBRUARI,2021
DESAIN DATABASE
MODUL 3: AGGREGATE FUNCTION
TIM PENYUSUN:
- BRIANSYAH SETIO WIYONO, S.KOM., M.KOM
- ANDI SHAFIRA DYAH K.
- ANNISA FITRIA NURJANNAH
DESAIN DATABASE
MATERI POKOK
1. Join
Join Adalah salah satu konstruksi dasar dari SQL dan basis data. Join dapat didefinisikan sebagai
kombinasi record daru dua tabel atau lebih didalam basis data relasional dan menghasilkan sebuah
tabel (tempory) baru yang disebut Joined Tabel.
a. Inner Join
Digunakan untuk menghasilkan baris data dengan menggabungkan 2 buah table atau lebih.
b. Left Join
Left Join merupakan penggabungan tabel dimana data akan ditampilkan secara keseluruhan
pada tabel pertama (kiri) namun record pada tabel kedua (kanan) yang kosong akan
ditampilkan dengan isi NULL.
c. Right Join
Right Join memiliki fungsi yang bertolak belakang dengan left join, dimana right join akan
menampilkan data secara keseluruhan pada tabel kedua (kanan), namun NULL pada tabel
pertama (kiri)
d. Union Join
Digunakan untuk menghasilkan baris data jika ada data yang sama pada salah satu tabel.
2. Aggregate Functions
Fungsi yang bekerja terhadap suatu group.
a. Count
Untuk menghitung baris dari suatu tabel.
b. Sum
Untuk menghitung jumlah dari sekumpulan kolom dari suatu tabel.
c. Avg
Untuk mendapatkan nilai raata-rata nilai kolom tertentu pada suatu tabel.
d. Max
Untuk mendapatkan nilai terbesar dari sekumpulan nilai kolom dari suatu tabel.
e. Min
Untuk mendapatkan nilai terkecil dari sekumpulan nilai kolom dari suatu tabel
3. Groping Functions
a. Group by
Untuk menentukan bagaimana baris-baris akan dikelompokkan
b. Having
Untuk menentukan pengelompokkan-pengelompokkan yang akan ditampilkan, lebih jauh lagi
membatasi pengelompokkan berdasarkan informasi agreget
4. Sorting
Suatu proses menyusun kembali himpunan obyek mengunakan aturan tertentu. Macam-macam
sorting :
a. Urut naik (ascending)
Mengurutkan dari data yang mempunyai nilai paling kecil sampai paling besar.
b. Urut turun (descending)
Mengurutkan dari data yang mempunyai nilai paling besar sampai paling kecil.
MATERI PRAKTIKUM
Skema HR
Oracle Database XE menyediakan skema bawaan yang dapat langsung digunakan pengguna, salah
satunya adalah skema HR. Skema HR memiliki tujuh entitas dengan atribut atribut bawaan yang
terkandung di dalamnya. Untuk lebih jelasnya, perhatikan gambar berikut :
2. Pilih “Use Existing” untuk Database User dan pilih “HR” untuk Database Username. Selebihnya isi
sesuai kebutuhan. Setelah itu klik “Create Workspace”.
LATIHAN PRAKTIKUM
1. Join
a. Inner Join
SELECT d.department_name, e.first_name,e.last_name
FROM departments d
INNER JOIN employees e
ON d.department_id = e.department_id;
b. Left Join
SELECT d.department_name, e.first_name,e.last_name
FROM departments d
LEFT JOIN employees e
ON d.department_id = e.department_id;
c. Right Join
SELECT d.department_name, e.first_name,e.last_name
FROM employees e
RIGHT JOIN departments d
ON e.department_id = d.department_id;
d. Union Join
SELECT d.department_name,e. first_name
FROM employees e, departments d
WHERE e.department_id = d.department_id (+)
UNION ALL
SELECT d.department_name,e. first_name
2. Aggregate Functions
a. Count
Select count (*) from employees;
b. Sum
SELECT job_id, SUM(salary) PAYROLL FROM employees WHERE job_id NOT LIKE '%REP%'
GROUP BY job_id HAVING SUM(salary) > 13000 ORDER BY SUM(salary);
c. Avg
SELECT department_id, AVG(salary) FROM employees WHERE AVG(salary) > 8000 GROUP BY
department_id;
d. Max
SELECT MAX(AVG(salary)) FROM employees GROUP BY department_id;
e. Min
SELECT MIN(AVG(salary)) FROM employees GROUP BY department_id;
3. Grouping functions
a. Group by
SELECT department_id, AVG(salary) FROM employees GROUP BY department_id;
b. Having
SELECT department_id, MAX(salary) FROM employees GROUP BY department_id HAVING
MAX(salary) >10000;
4. Sorting
a. Ascending
Select * from employees order by first_name asc;
b. Descending
Select * from employees order by first_name desc;
LEMBAR KERJA
TEKNIS PRAKTIKUM
1. Praktikan memilih salah satu pilihan tingkatan soal yang disediakan (Mudah, Medium, Sukar)
2. Setelah memilih, asisten akan memberikan soal yang sesuai dengan pilihan praktikan
3. Praktikan memecahkan kasus tersebut dan menuliskan query secara live coding
4. Batas maksimal praktikum setiap praktikan adalah 10 menit
e. Count
f. Sum
g. Avg
h. Min
i. Max
j. Group by
k. Having
l. Ascending
m. Descending
RUBRIK PENILAIAN
1. Ketepatan pemecahan soal : 70%
2. Program dapat berjalan dengan baik : 30%