Ringkasan dokumen tersebut adalah tentang aljabar relasional yang mencakup definisi, contoh operasi seperti select, project, join, dan fungsi aggregate seperti count, average, dan maximum.
ALJABAR RELASIONAL
• Definisi: Sekumpulan operasi yang
digunakan untuk memanipulasi relasi-relasi
• Dapat dibagi dalam 2 kelompok :
– Operasi yang melibatkan teori set, yaitu
UNION, INTERSECTION, DIFFERENCE,
CARTESIAN PRODUCT
– Operasi khusus untuk basis data relasional,
misal : SELECT, PROJECT dan JOIN.
OPERASI SELECT
• Digunakanuntuk memilih satu sub-set
record dalam suatu relasi yang memenuhi
kondisi pemilihan
• Bentuk umum : <kondisi pemilihan> (<nama relasi>)
• Dimana = select operator
<kondisi pemilihan> = operasi boolean
5.
CONTOH OPERASI SELECT
•Dapatkan subset dari pegawai yang bekerja
pada Departemen 4 dan mempunyai gaji
lebih besar daripada 50000 :
• (DNO=4) and (SALARY > 50000) (EMPLOYEE)
6.
OPERASI PROJECT
• Denganmemandang relasi sebagai tabel,
maka operasi ini digunakan untuk memilih
sejumlah kolom tertentu dari tabel.
• Bentuk umum :
• <daftar atribut > (<nama tabel>)
7.
CONTOH OPERASI PROJECT
•Dapatkan atribut LNAME (nama belakang)
dan SALARY (gaji) dari tabel EMPLOYEE
• LNAME, SALARY (EMPLOYEE)
8.
SELECT dan PROJECT
•Dapatkan list dari nama (LNAME) dan
SALARY dari semua pegawai yang bekerja
pada departemen 5 :
• RESULT <= LNAME,SALARY ( DNO=5 (EMPLOYEE) )
• Atau
• DEP5_EMP <= DNO=5 (EMPLOYEE)
• RESULT <= LNAME,SALARY (DEP5_EMP)
Contoh Operasi TeoriSet
• Dapatkan nomer induk pegawai (SSN) dari semua
pegawai yang bekerja pada departemen 5 atau
yang secara langsung menjadi supervisor dari
pegawai yang bekerja pada departemen 5
• DEP5_EMPS <= DNO=5 (EMPLOYEE)
• RESULT1 <= SSN (DEP5_EMPS)
• RESULT2(SSN) <= SUPERSSN (DEP5_EMPS)
• RESULT <= RESULT1 RESULT2
11.
CARTESIAN PRODUCT
• NOTASI: X
• Disebut juga CROSS PRODUCT atau
CROSS JOIN dan digunakan untuk
mengkombinasikan record dari dua tabel.
12.
Contoh Operasi
Cartesian Product
•Dapatkan untuk setiap pegawai perempuan , satu
list nama dari dependent (anggota keluarga)
pegawai tersebut.
• FEMALE_EMPS <= SEX=‘F’ (EMPLOYEE)
• EMPNAMES <= LNAME,SSN (FEMALE_EMPS)
• EMP_DEP <= EMPNAMES X DEPENDENT
• ACTUAL_DEP <= SSN=ESSN (EMP_DEP)
• RESULT <= LNAME,DEPENDENT_NAME (ACTUAL_DEP)
13.
OPERASI JOIN
• Notasi:
• Operasi ini sangat penting karena
memungkinkan untuk melakukan proses
relationship dari sejumlah tabel.
14.
Contoh Operasi Division
•Dapatkan nama-nama pegawai yang bekerja pada
semua project dimana ‘Smith’ juga bekerja di
dalamnya.
• SMITH <= LNAME=‘Smith’ (EMPLOYEE)
• SMITH_PNOS <= PNO (WORKS_ON ESSN=SSN SMITH)
• SSN_PNOS <= PNO,ESSN (WORKS_ON)
• TEMP_RES <= SSN_PNOS SMITH_PNOS
• RESULT <= LNAME (TEMP_RES X EMPLOYEE)
15.
Fungsi Aggregate ()
• SUM : menjumlah nilai dari suatu atribut
• AVERAGE : mencari rata-rata nilai dari
suatu atribut
• MAXIMUM : mencari nilai paling besar
dari suatu atrbiut
• MINIMUM : mencari nilai paling besar dari
suatu atribut
• COUNT : menghitung jumlah record
16.
Penggunaan Fungsi Aggregate
•Dapatkan setiap nomer department, jumlah
pegawai dalam department dan gaji rata-rata
mereka.
• R(DNO,jumlah_peg, gaji_rata2) <=
DNO, COUNT SSN, AVERAGE SALARY (EMPLOYEE)
Relational Schema
• Relationalschemas for five relations in a
movie database are depicted below.
– movie(movieName, whenMade)
– star(starName, age)
– studio(studioName, where)
– produces(studioName, movieName)
– starsIn(starName, movieName)
19.
Exercise
1. When wasthe movie Titanic made?
2. Who stars in Titanic?
3. Which stars that are over 40 appear in Titanic?
4. Which stars do not appear in Titanic?
5. Which studio produces Titanic?
6. What are the names of stars who star in movies produced
by studios located in Townsville?
7. Which movies star Kate Winslet?
8. Which Titanic stars are under 20?
9. Give me the stars and the studios they work for who
starred in Titanic