Anda di halaman 1dari 29

Aljabar Relational

Konsep Basis Data


Bahan Kajian

Operasi Unary
Operasi Set
Operasi Join
Operasi Division

Dunia satu keluarga


Capaian

Mahasiswa/i
mampu

Menjelaskan
Model
basis data
relasional

Dunia satu keluarga


Aljabar Relational

Menjelaskan secara teori cara untuk


memanipulasi konten dari tabel
menggunakan delapan operator relational
Unary : SELECT, PROJECT,
Set : UNION, INTERSECT, DIFFERENCE,
PRODUCT,
Join: JOIN,
Division : DIVIDE

Dunia satu keluarga


Aljabar Relational

Operator yang digunakan ada 2 yaitu:


Operator Himpunan
• Union/gabungan ( È )
• Intersection/irisan ( ∩ )
• Difference/selisih ( – )
• Cartesian Product ( X )
Operation Relational
• Restrict/pemilihan tuple atau record ( s )
• Project/pemilihan attribut atau field ( p )
• Divide/membagi ( ¸ )
• Join/menggabungkan ( q )
Dunia satu keluarga
1# SELECT

• SELECT, disebut juga RESTRICT, memberikan


nilai untuk semua baris yang memenuhi
kondisi tertentu dalam sebuah tabel.
• SELECT dapat digunakan untuk mendata
seluruh nilai pada baris, atau memberikan
nilai hanya pada baris yang memenuhi
kriteria tertentu.
• Dengan kata lain, SELECT menghasilkan
sebuah subset horizontal dari sebuah table.
Dunia satu keluarga
Semua operator relational memiliki sifat closure
yaitu penggunaan operator aljabar relational pada
relation (tabel) yang sudah ada akan menghasilkan
relation baru

Dunia satu keluarga


2# PROJECT

• PROJECT memberikan semua nilai untuk


attribute yang dipilih.

• Dengan kata lain, PROJECT


menghasilkan sebuah subset vertikal
dari sebuah tabel.

Dunia satu keluarga


Dunia satu keluarga
3# UNION

• UNION mengombinasikan seluruh baris dari 2 tabel,


dengan tidak menyertakan baris yang duplikasi.
• Tabel harus memiliki karakteristik attribute yang
sama (kolom dan domain harus kompatibel) untuk
bisa digunakan pada UNION.
• Saat 2 atau lebih tabel memiliki jumlah kolom yang
sama, dan saat kolom yang saling berkoresponden
memiliki domain yang sama (atau kompatibel), maka
tabel dikatakan sebagai union-compatible

Dunia satu keluarga


Dunia satu keluarga
4# INTERSECT

• INTERSECT memberikan hanya baris yang


muncul pada dua tabel.
• Sebagaimana pada UNION, tabel harus
union-compatible untuk memberikan hasil
yang valid.

Dunia satu keluarga


Sebagai contoh, INTERSECT tidak dapat
digunakan apabila salah satu attribute adalah
numerik dan satu lainnya adalah berbasis
karakter.

Dunia satu keluarga


5# DIFFERENCE

• DIFFERENCE memberikan seluruh baris pada


satu tabel yang tidak terdapat pada tabel
lainnya / mengurangi satu tabel dengan tabel
lainnya.
• Seperti pada UNION, tabelnya harus union-
compatible untuk mendapatkan hasil yang
valid.

Dunia satu keluarga


Perhatikan bahwa mengurangi tabel pertama
dengan tabel kedua adalah tidak sama dengan
mengurangi tabel kedua dengan tabel
pertama.

Dunia satu keluarga


6# PRODUCT

• PRODUCT memberikan seluruh


pasangan baris yang memungkinkan
dari 2 tabel-juga disebut sebagai
produk Cartesian.
• Sehingga, bila ada tabel memiliki 6
baris dan tabel lainnya memiliki 3 baris,
maka PRODUCT menghasilkan sebuah
daftar yang berisi 6×3 =18 baris.
Dunia satu keluarga
Dunia satu keluarga
7# JOIN

• JOIN memungkinkan informasi untuk


dikombinasikan dari 2 atau lebih tabel.
• JOIN adalah kekuatan utama dibalik
database relational, memungkinkan
penggunaan tabel yang independen
yang terhubung melalui attribute yang
sama.

Dunia satu keluarga


Natural join menghubungkan tabel dengan memilih hanya
baris yang memiliki nilai sama pada attribute yang sama,
dan merupakan hasil dari proses 3-tahap berikut ini:
a) Lakukan PRODUCT dari tabel-tabel tersebut
b) Lakukan SELECT pada hasil langkah a) untuk
menghasilkan hanya baris dengan nilai attribute yang
sama. Kolom yang sama disebut sebagai kolom join.
c) Lakukan PROJECT pada hasil langkah b) untuk
menghasilkan satu saja attribute yang sama, sehingga
menghilangkan duplikasi kolom.
Hasil akhir dari natural join adalah sebuah tabel yang
tidak menyertakan pasangan yang tidak sesuai, dan hanya
menampilkan pasangan yang sesuai saja.

Dunia satu keluarga


Perhatikan kedua relation berikut sebagai
contoh untuk natural join

Dunia satu keluarga


a) Lakukan operasi PRODUCT

Dunia satu keluarga


b) Lakukan operasi SELECT

Terhadap semua kolom /attribute yang


memiliki nilai yang sama

Dunia satu keluarga


c) Lakukan operasi PROJECT

Untuk menghilangkan duplikasi kolom


/attribute yang bernilai sama

Dunia satu keluarga


• Inner join adalah join yang hanya
mengembalikan record yang sesuai dari
tabel yang sedang dijoin.

• Pada outer join, pasangan nilai yang


sesuai akan dipertahankan, dan nilai
yang tidak berpasangan pada tabel
lainnya akan dibiarkan null.

Dunia satu keluarga


Left outer join menghasilkan seluruh baris
pada tabel CUSTOMER, termasuk yang tidak
memiliki pasangan pada tabel AGENT.

Dunia satu keluarga


Right outer join menghasilkan seluruh baris
pada tabel AGENT, termasuk yang tidak
memiliki pasangan pada tabel CUSTOMER.

Dunia satu keluarga


8# DIVIDE

• Operasi DIVIDE menggunakan 1 tabel kolom tunggal


(kolom “a”) sebagai pembagi dan 1 tabel kolom ganda
(kolom “a” and “b”) sebagai yang terbagi.
• Kedua tabel harus memiliki kolom yang sama (misal
kolom “a”).
• Hasil dari operasi DIVIDE adalah sebuah tabel kolom
tunggal dengan nilai pada kolom “a” dari baris pada
tabel yang terbagi dimana nilai pada kolom yang
sama (misal kolom “a”) dalam kedua tabel adalah
sesuai.

Dunia satu keluarga


• Tables 1 dan 2 keduanya mengandung kolom
KODE sedangkan LOC tidak.
Tabel 3 menghasilkan nilai kolom (LOC)
dengan setiap nilai pada Tabel 1.

Dunia satu keluarga


Diskusi & tanya jawab

Dunia satu keluarga

Anda mungkin juga menyukai