bab5
TRANSCRIPT
ALJABAR RELASIONALALJABAR RELASIONAL
ALJABAR RELASIONALALJABAR 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 Daftar Tabel (Relasi) Yang DipakaiDipakai
OPERASI SELECTOPERASI SELECT
• Digunakan untuk 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
σσ
CONTOH OPERASI SELECTCONTOH 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 PROJECTOPERASI 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 PROJECTCONTOH OPERASI PROJECT
• Dapatkan atribut LNAME (nama belakang) dan SALARY (gaji) dari tabel EMPLOYEE
• LNAME, SALARY (EMPLOYEE)π
SELECT dan PROJECTSELECT 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)
π σσ
π
OPERASI-OPERASI OPERASI-OPERASI TEORI SETTEORI SET
• Operasi-operasi teori set, yaitu : union ( ), intersection ( ), difference (-). ∪
Contoh Operasi Teori SetContoh 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 PRODUCTCARTESIAN PRODUCT
• NOTASI : X
• Disebut juga CROSS PRODUCT atau CROSS JOIN dan digunakan untuk mengkombinasikan record dari dua tabel.
Contoh Operasi Contoh Operasi Cartesian ProductCartesian 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 JOINOPERASI JOIN
• Notasi :
• Operasi ini sangat penting karena memungkinkan untuk melakukan proses relationship dari sejumlah tabel.
Contoh Operasi DivisionContoh 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 ( )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 AggregatePenggunaan 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 SoalLatihan Soal
Kerjakan, kemudian kumpulan Kerjakan, kemudian kumpulan setelah liburan panjangsetelah liburan panjang
Relational SchemaRelational 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)
ExerciseExercise
• 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