ALJABAR RELASIONAL DAN KALKULUS RELASIONAL Betha Nurina Sari, M.Kom
Aljabar Relasional / Relational Algebra Operasi-operasi ini digunakan untuk melakukan permintaan dasar temu kembali (retrieval requests) pada relasi. Urutan operasi aljabar membentuk relational algebra expression.
Operator Dasar 1 Seleksi 2 Proyeksi 3 Union (Gabungan) 4 Minus/set difference 5 Cartesian Product
Operator Tambahan Set Intersection (Irisan) Natural Join Theta Join Division/Quotient N-ary Join
Select - Operasi select berfungsi untuk menyeleksi tupel-tupel yang memenuhi predikat yang diberikan dari sebuah tabel relasi . - Simbol sigma “σ” Sintaks : σP(E1) Keterangan : P : kondisi operasi logika E1 : Tabel / Relasi
Select P merupakan formula dari kalkulus perbandingan (proportional calculus) yang berisi terms yang dihubungkan oleh : ^ (and), v (or), ~ (not) setiap term salah satu dari : <atribut> op <atribut> or <konstanta> atau <atribut> op <atribut> dengan op salah satu dari : =, ≠, >, ≥, <, ≤
Select Operasi SELECT σ adalah komutatif : sehingga, σ<kondisi 1>(σ<kondisi 2>(R)) = σ<kondisi 2> (σ<kondisi 1> (R)) Operasi select dapat di cascade dengan sembarang urutan : σ<kondisi 1> (σ<kondisi 2> (σ<kondisi 3> (R)) = σ<kondisi 2> (σ<kondisi 3> (σ<kondisi 1> (R)) Operasi SELECT cascade dapat diganti dengan sebuah seleksi dengan disambung oleh semua kondisi menjadi σ<kondisi 1> (σ<kondisi 2> (σ<kondisi 3> (R)) = σ<kondisi 1> AND <kondisi 2> AND <kondisi 3> (R)))
Contoh Tampilkan tupel2 yang memiliki atribut B = “b” dari tabel E1 Maka σB=’b’(E1) Hasilnya :
Contoh Select Contoh : dilakukan operasi σjenis=“action”(film) Hasilnya : suatu relasi dengan tuple-tuple yang memiliki jenis sama dengan action. Pada relasi/tabel film sebagai berikut : kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5 D01 drama Love Story H01 horor Evil Death kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5
Proyeksi / Project Operasi project berfungsi untuk memilih nilai atribut-atribut tertentu saja dari sebuah tabel relasi Simbol : π (pi) Sintaks : π a1,..,am (E1) Ket : m <= K, K adalah jumlah atribut (aritas) a = nama atribut E1 = relasi
π A,C(E1) Contoh Tampilkan atribut A dan C dari tabel E1. maka : Hasilnya :
Contoh Proyeksi Contoh : dilakukan operasi pkode_film, jenis, judul(film) pada relasi film sebagai berikut : Hasilnya : kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5 D01 drama Love Story H01 horor Evil Death kode_film jenis judul A01 action Spiderman A02 Spiderman 2 D01 drama Love Story H01 horor Evil Death
Perbedaan Selection dan Projection
RENAME Operasi RENAME 𝜌𝑆(𝑅 ) RENAME atribut 𝜌(B1,B2,…Bn)(𝑅 ) Contoh : Memasangkan senior yang 2 th diatasnya sebagai mentor dengan siswa baru 𝜌 Mentor(senior,class) (𝜎year>2(Student))×𝜎year=1(Student)
Contoh lain RENAME ACTUAL_DEPENDENTS ← σSSN=ESSN(EMP_DEPENDENTS) RESULT ← π FNAME, LNAME, DEPENDENT_NAME (ACTUAL_DEPENDENTS)
Union -Operasi union berfungsi untuk mendapatkan gabungan nilai atribut dari sebuah tabel relasi dengan nilai atribut dari tabel relasi lainnya. - Simbol υ - Sintaks : E1 υ E2 Syarat : Aritas sama Domain atribut sama
Contoh
Minus/Set Difference Operasi set difference berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi, tapi tidak ada dalam tabel relasi lainnya. Simbol : – Sintaks : E1 – E2
Contoh
Cartesian Product R x S Menggambarkan suatu relasi penggabungan dari tiap tuple relasi R dengan tiap-tiap relasi tuple S. Operasi cartesian product berfungsi untuk mengkombinasikan informasi yang ada dalam 2 tabel relasi dan menghasilkan sebuah tabel relasi yang baru Simbol : X Sintaks : E1 X E2
Contoh : Employees X Projects
Irisan / Intersection Operasi set intersection berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi dan juga ada dalam tabel relasi lainnya Simbol : ∩ Sintaks : E1 ∩ E2 Memiliki syarat yang sama dengan union
Contoh Intersection/ Irisan
Contoh
JOIN Join adalah salah satu dari operasi yang sulit untuk harus diterapkan secara efektif di dalam suatu RDBMS . Ada berbagai format Operasi Join, masing-masing dengan perbedaan kesulitannya dipisahkan, tambahan lagi bermanfaat dibanding yang lain: Theta join (-join) - Equijoin - Natural join - Outer join - Semijoin
Natural Join Operasi natural join memungkinkan kita untuk menggabungkan operasi select dan cartesian product menjadi hanya 1 operasi saja Simbol : ∞ Sintak : E1 ∞ E2 Syarat : dilakukan jika kedua relasi memiliki satu atau lebih atribut sekutu Kolom atribut sekutu bersifat tunggal(diambil salah satu)
CONTOH NATURAL JOIN
Contoh natural join
Theta Join Operasi theta join berfungsi jika kita ingin mengkombinasikan tupel dari 2 tabel relasi dimana kondisi dari kombinasi tersebut tidak hanya kesamaan nilai dari 2 atribut bernama sama, tetapi kondisi yang diinginkan juga bisa menggunakan operator relasional (≤, <, =, >, ≥). Simbol : ∞ Sintaks : E1 ∞ E2 atau iθj
Contoh :
CONTOH THETA JOIN Jika F hubungannya sama,maka disebut equi-join
Division Operasi division berfungsi untuk query yang memasukkan frase “untuk semua/seluruh”. Simbol : ÷ Sintaks : E1 ÷ E2 Syarat : jika k1 aritas E1 dan k2 aritas E2, maka k1 > k2 dan k2 ≠ 0
Contoh Maka : E1 ÷ E2
n-ary join bisa ditulis tanpa ambiguitas r1 ⋈ r2 ⋈ … ⋈ rn N-ary Join Operations Sifat natural join komutatif: r1 ⋈ r2 = r2 ⋈ r1 asosiatif : (r1 ⋈ r2) ⋈ r3 = r1 ⋈ (r2 ⋈ r3) n-ary join bisa ditulis tanpa ambiguitas r1 ⋈ r2 ⋈ … ⋈ rn
Contoh N-ary Join
Ringkasan
Tupel Kalkulus Relasional
Domain Kalkulus Relational
Tugas 1 Tugas 1 : Model Data Relational Soal di bethanurinasari.wordpress.com Waktu mengerjakan 1 minggu. Selamat mengerjakan ^_^
Next>>>