ALJABAR RELASIONAL Mata Kuliah : Database 1 Dosen : Tessy Badriyah ALJABAR RELASIONAL • Definisi : Sekumpulan operasi yang digunakan untuk memanipulasi relasi-relasi • Dapat.

Download Report

Transcript ALJABAR RELASIONAL Mata Kuliah : Database 1 Dosen : Tessy Badriyah ALJABAR RELASIONAL • Definisi : Sekumpulan operasi yang digunakan untuk memanipulasi relasi-relasi • Dapat.

ALJABAR RELASIONAL
Mata Kuliah : Database 1
Dosen : Tessy Badriyah
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.
Daftar Tabel (Relasi) Yang Dipakai
OPERASI SELECT
• Digunakan untuk memilih satu sub-set
record dalam suatu relasi yang memenuhi
kondisi pemilihan
• Bentuk umum : 
(<nama relasi>)
• Dimana  = select operator
<kondisi pemilihan> = operasi boolean
<kondisi pemilihan>
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)
•
OPERASI PROJECT
• Dengan memandang relasi sebagai tabel,
maka operasi ini digunakan untuk memilih
sejumlah kolom tertentu dari tabel.
• Bentuk umum :
 <daftar atribut > (<nama tabel>)
•
CONTOH OPERASI PROJECT
• Dapatkan atribut LNAME (nama belakang)
dan SALARY (gaji) dari tabel EMPLOYEE
•
 LNAME, SALARY (EMPLOYEE)
SELECT dan PROJECT
• Dapatkan list dari nama (LNAME) dan
SALARY dari semua pegawai yang bekerja
pada departemen 5 :
•
•
•
•

RESULT <=
Atau
DEP5_EMP <=
RESULT <=
LNAME,SALARY

(

DNO=5
(EMPLOYEE) )
(EMPLOYEE)
LNAME,SALARY (DEP5_EMP)

DNO=5
OPERASI-OPERASI
TEORI SET
• Operasi-operasi teori set, yaitu : union ( ),
intersection ( ), difference (-).
Contoh Operasi Teori Set
• 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
CARTESIAN PRODUCT
• NOTASI :
X
• Disebut juga CROSS PRODUCT atau
CROSS JOIN dan digunakan untuk
mengkombinasikan record dari dua tabel.
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)
OPERASI JOIN
• Notasi :
• Operasi ini sangat penting karena
memungkinkan untuk melakukan proses
relationship dari sejumlah tabel.
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)
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
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)
Latihan Soal
Kerjakan, kemudian kumpulan
setelah liburan panjang
Relational Schema
• Relational schemas 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)
Exercise
1.
2.
3.
4.
5.
6.
7.
8.
9.
When was the movie Titanic made?
Who stars in Titanic?
Which stars that are over 40 appear in Titanic?
Which stars do not appear in Titanic?
Which studio produces Titanic?
What are the names of stars who star in movies produced
by studios located in Townsville?
Which movies star Kate Winslet?
Which Titanic stars are under 20?
Give me the stars and the studios they work for who
starred in Titanic