v Operasi-operasi select, project dan rename disebut operasi unary, karena operasi-operasi tersebut hanya memerlukan satu relasi.
Aljabar Relasional
v Operasi-operasi union, set difference dan cartesian product memerlukan sepasang relasi, disebut operasi binary.
Uro Abdulrohim, S.kom, MT.
v Adalah kumpulan operasi terhadap relasi, dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi yang baru.
v Fundamental § Unary operators • Selection • projection • rename
v Operasi-operasi dasar dalam aljabar relational,adalah: select, project, union, set difference, cartesian product, dan rename.
§ Binary operators (union compatibilty)
v Operasi lainnya antara lain: set intersection, natural join, division dan assignment
• union • set difference • Cartesian product
1
2
Select (Cont..) v Additional § rename § intersection § join § quotient (division)
Jika untuk menyeleksi tuple-tuple dari relasi Hutang dimana nama cabangnya adalah “Jakarta”, ditulis : σ nama-cabang = “Jakarta” (Hutang) Maka Hasil Query nya adalah :
Selection
NomorPinjaman
Jumlah
Jakarta
L-17
1000
Jakarta
L-14
1500
Project vOperasi Project ( π = phi ) Operator projection beroperasi pada sebuah relation, yaitu membentuk relation baru dengan mengcopy atribute-atribute dan domain-domain dari relation tersebut berdasarkan argumenargumen pada operator tsb. vDengan memandang relasi sebagai tabel, maka operasi ini digunakan untuk memilih sejumlah kolom tertentu dari tabel. vBentuk umum : v π
()
v Operasi Select ( σ = sigma ) v Operasi Select menyeleksi tuple-tuple pada sebuah relation yaitu tuple-tuple yang memenuhi syarat yang sudah ditentukan sebelumnya. v Bentuk umum : σ
Nama Cabang
()
v Dimana σ = select operator = operasi boolean
3
4
Project (Cont..)
Tabel Acuan
v Contoh : untuk menampilkan seluruh Cabang dan jumlah tanpa Nomor Pinjaman, maka dapat dituliskan : π nama-cabang, jumlah (hutang)
Depositor
Project (Cont..)
jumlah
Jakarta
1000
Depok
2000
Bogor
1500
Jakarta
1500
Tangerang
500
Bekasi
900
Bogor
1300
No_Nasaba h
NamaNasabah
Jumla h
Jakarta
111
Komala
1000
NamaCabang
Nopinjaman
Namanasabah
jumla h
Jakarta
01
Komala
200
Bandung
02
Mas’ud
450
Depok
23
Ardhian
500
Bandung
132
Mas’ud
2000
Depok
234
Ardhian
2500
Bandung
21
Hanung
300
Bandung
456
Hanung
1500
Bekasi
34
Alis
250
Bekasi
256
Guntur
2000
Jakarta
32
Dedi
450
Depok
56
Lusi
500
Jakarta
345
Dedi
2500 Bandung
54
Paramita
300
Bekasi
78
Guntur
350
Jakarta
98
Dedi
150
UNION v Operasi union dalam aljabar relasional sama halnya dengan operasi union pada aritmatika. Misal user menginginkan nama-nama semua nasabah bank yang memiliki sebuah account atau sebuah loan atau keduanya. Perhatikan bahwa relasi customer tidak mengandung informasi tersebut v Untuk menjawab query ini diperlukan informasi dari relasi Depositor dan relasi Borrower. Dengan operasi union informasi yang diinginkan dapat diperoleh dengan menulis query sebagai berikut : πnama-nasabah(borrower) U πnamanasabah(depositor) v Hasil yang didapatkan ???
v Maka Hasil Query nya adalah :
Namacabang
Borrower
NamaCabang
5
6
Cartesian Product (Cont...)
Set Difference vDisimbolkan dengan tanda “ – “. vOperasi ini akan menemukan tuple-tuple yang berada pada satu relasi tetapi tidak berada pada relasi yang lainnya. vContoh, untuk menemukan semua nasabah bank yang mempunyai account tetapi tidak mempunyai loan, ditulis:
v Contoh : Jika diinginkan nama-nama dari semua nasabah yang mempunyai pinjaman (loan) di bank cabang Bogor, maka query-nya ditulis : σnama-cabang = “Bogor” (borrower x loan) v Hasilnya ???
πnama-nasabah(depositor) - πnamanasabah(borrower) v Bagaimanakah hasilnya ????
Cartesian Product
Rename
v Operasi Cartesian-product disimbolkan dengan “ X “.
v Dilambangkan dengan simbol rho (ρ). v Sintaks penulisan rename : ρx(E)
v Operasi Cartesian-product akan dihasilkan informasi yang merupakan kombinasi dari dua relasi.
v Operasi rename mengeluarkan hasil ekspresi E dengan nama x. v Contoh :
v Jika kita memiliki relasi r1(R1) dan r2(R2), maka r1 x r2 adalah relasi yang skemanya merupakan gabungan dari R1 (atribut-atribut relasi r1) dan R2 (atribut-atribut relasi r2).
v πaccount.balance(σaccount.balance
7
8
Rangkuman v Jika E1 dan E2 adalah ekspresi aljabar-relasional, v maka berikut ini adalah semua ekspresi aljabarrelasional : § E1 U E2 § E1 – E2 § E1 x E2
v σp(E1), dimana p adalah sebuah predikat untuk atribut-atribut dalam E1. v πs(E1), dimana s adalah daftar yang terdiri dari beberapa atribut dalam E1. v ρx(E1), dimana x adalah nama baru untuk hasil E1
9