Relasi dapat di kategorikan menjadi 2 macam :
Relasi Aljabar dan Relasi Kalkulus.
Relasi Aljabar
- terdiri dari himpunan operator level tinggi yang dioperasikan pada suatu relasi dimana Setiap operator menggunakan satu atau dua relasi sebagai input dan menghasilkan relasi baru sebagai output.
- Codd mendefinisikan operator relasi aljabar terdiri dari delapan operator, terbagi menjadi dua kelompok :
- Operasi tradisional, terdiri dari Union, Intersection, Difference, dan Cartesian Product.
- Operasi relasional khusus, terdiri dari Restrict, Project, Join, dan Devide.
Operator relasi aljabar:
Union ( U ) atau gabungan, dimisalkan A U B adalah relasi dengan heading (atribut) yang sama untuk setiap A dan B, dimana terdiri dari himpunan semua tuples yang terdapat pada A atau B atau kedua-duanya.
Maka Hasil dari A U B :
Contoh relasi dan hasil relasinya :
Intersect ( n ) atau irisan adalah relasi dengan heading (atribut) yang sama untuk setiap A dan B, dimana terdiri dari himpunan semua tuples yang terdapat pada A dan B.
Bila dilihat dari tabel sebelumnya maka didapatkan hasil :
Difference ( Minus ) adalah relasi dengan heading (atribut) yang sama untuk setiap A dan B, dimana terdiri dari himpunan semua tuples yang terdapat pada A, tetapi tidak terdapat pada B.Lihat gambar di bawah ini :
Jika dilihat pada tabel :
Cartesian Product ( / TIMES) adalah relasi yang terdiri dari semua himpunan tuples untuk setiap elemen relasi pada A dikombinasikan dengan semua elemen pada relasi B.
Jika dilihat pada tabel :
Contoh Kasus yang lain :
Restriction (s) adalah :
ekstraksi terhadap suatu tuples (baris) pada suatu relasi yang memenuhi kondisi tertentu. Kondisi untuk relasi, direpresentasikan menggunakan klausa WHERE dan dapat dikombinasikan dengan operator logika dan/atau matematika.
Contoh bila dilihat pada tabel :
Projection (p) adalah ekstraksi terhadap suatu atribut (kolom) pada suatu relasi yang memenuhi kondisi tertentu.
Jika diliat pada tabel :
Natural Join (JOIN) , relasi ini membentuk relasi dari dua relasi yang terdiri dari semua kemungkinan kombinasi tuples, dimana tuples pada relasi yang kedua memenuhi suatu kondisi tertentu (memiliki nilai atribut yang sama).
Jika suatu relasi yang tidak memiliki atribut yang memenuhi kodisi (memiliki nilai sama), maka A JOIN B adalah ekuivalen dengan A TIMES B.
Devide (DEVIDEBY) dimana A DEVIDEBY B adalah relasi dengan heading (X) dan terdiri dari himpunan semua tuples (X : x) dari tuples (X : x, Y : y) pada relasi A untuk semua tuples (Y : y) pada relasi B.
Contoh :
Contoh yang lain :
RELASI KALKULUS
Ciri-ciri relasi kalkulus :
- First order calculus menggunakan simbol-simbol predikat dan simbol-simbol fungsi. Untuk kaitannya dengan basis data : simbol fungsi tidak diperlukan dan predikat diinterprestasikan sebagai relasi.
- Formula pada first order calculus dapat dibedakan ke dalam dua kelas :
- Open formulas (free variable)
- Closed formulas atau sentences yang memiliki variable terbatas.
Open formula
didefinisikan sebagai himpunan tuples elemen dari kondisi secara keseluruhan, yang dapat menghasilkan formula “TRUE”.
Closed formula
Karena kalkulus dipergunakan sebagai bahasa query dan basis data bertujuan untuk instant maupun relasi lainnya, maka closed formulas tidak diperhatikan.
Domain Relational Calculus (DRC)
Simbol yang muncul pada formula terdiri dari : konstan (elemen-elemen domain D), variabel (elemen-elemen dari himpunan berhingga V yang dihubungkan dengan domain D), nama relasi (tabel) dan atribut (berdasarkan skema basis data), operator perbandingan (=, ?, >, >=, <, <=), penghubung logika (? ( dan / konjugsi), (V atau/disjungsi), ¬ (not/negasi), ada/beberapa( ), dan semua ( ))
sebagai definisi struktur hasil ekspresi, dimana relasi A1, A2, …,Ak berisi tupel dengan nilai c1, c2, …, ck yang secara berurutan mengganti nilai x1, x2,…,xk yang memenuhi f (f = TRUE)
Diberikan skema basis data silsilah dinasti keluarga :
- REIGNS(Sovereign, From, To)
- PERSON(Name, Sex, Birth, Death)
- FATHERHOOD(Father, Child)
- MOTHERHOOD(Mother, Child)
Contoh Relasi Kalkulus :
Mengambil nama dan tanggal lahir dari anggota keluarga yang berstatus female (F).
Bentuk DRC :
Mengambil Nama, Sex, dan dates (birth, death, mulai dan berakhirnya kekuasaan) untuk semua keluarga Sovereigns.
Mengambil nama-nama Sovereigns yang ayahnya diketahui, tetapi tidak terdapat pada list sebagai anggota dinasti.
•Tuple Relational Calculus (TRC)
0 komentar:
Posting Komentar