KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
Relational algebra
1. CHAPTER 4
RELATIONAL ALGEBRA
Relational Algebra
Model data relasional mempunyai 2 bagian
1. Manipulasi data
mendefinisikan tipe dari operasi yang diperbolehkan pada data
2. Integrity constraint
memastikan data yang dimasukan adalah data yang akurat dengan beberapa rule (aturan)
Manipulasi data
Mekanisme manipulasi data atau Query Language yang akan menampilkan data yang diakses dari tabel-tabel
yang ada.
Dasar bahasa (language) pada model data
Relational adalah
Relational Algebra (procedural language)
Relational Calculus (non procedural language)
5 basic operators
Select: ( )
Project: ( )
Union: ( )
set difference: ( – )
Cartesian product: ( x )
Select dan Project merupakan Operasi Unary (beroperasi pada satu relasi)
Operasi yang lain menggunakan lebih dari satu relasi (Operation Binary)
Select
Select digunakan untuk mendapatkan himpunan record dari suatu relasi yang memenuhi kondisi sesuai
dengan yang diinginkan
Select : σ (sigma)
Notasi: p(r)
p disebut selection predicate
Dimana p adalah Kondisi yang dihubungkan oleh : (and), (or), (not)
Setiap term berisi:
<attribute>op<attribute>or <constant>
dimana op berisi: =, , >, . <.
2. CHAPTER 4
► Contoh Select
Project
Operasi Projection (Project) digunakan untuk memilih atribut yang ingin ditampilkan dari relasi
Project : π(pi)
Notasi:
dimana A1, A2 adalah nama atributnya dan r adalah sebuah nama relasi.
► Contoh Project
A B C
10
20
30
40
1
1
1
2
A C
1
1
1
2
=
A C
1
1
2
A,C
(r)
n Re
las
i r
A B C D
1
5
12
23
7
7
3
10
A=B
(r) D > 5
(r)
A B C D
1
23
7
10
A=B ^ D > 5
(r)A B C D
1
12
23
7
3
10
A B C D
1
5
23
7
7
10
)(,,, 21
rkAAA
3. CHAPTER 4
Union
Union dari 2 relasi adalah penggabungan semua tuple dari 2 relasi, untuk nilai dari tuple yang sama
dihapus
Union : (cup)
Notasi: r s
Untuk r s harus valid.
1. r,s harus mempunyai arity yang sama(attributes yang sama)
2. domain dari attribute harus compatible (contoh: ke dua kolom pada r dan s mempunyai type yang
sama)
► Contoh Union
Set Difference
Difference : -(minus)
Notasi : r – s
Didefinisikan sebagai:
r – s = {t | t rand t s}
Set differences harus diambil dari relasi compatible.
r dan s harus mempunyai arity yang sama
attribute domains dari rdan sharus kompatibel
n r s:
A
B
1
2
1
A B
2
3
r
s
A B
1
2
1
3
4. CHAPTER 4
A B C D E
1
2
2
1
0
1
0
2
0
a
a
b
n Relasi r, s:
n r
x
s
:
A B
1
2
A B
1
1
1
1
2
2
2
2
C D
10
0
10
0
20
0
10
0
10
0
10
0
20
0
10
0
E
a
a
b
b
a
a
b
b
C D
10
0
10
0
20
0
10
0
E
a
a
b
b
r
s
► Contoh Difference
Cartesian-Product
Product : x (times)
Notasi :r x s
Didefinisikan sebagai:
r x s = {t q | t r and q s}
► Contoh Cartesian-Product
Composition
Dapat membuat expressions menggunakan multiple operations
Contoh: A=C(r x s)
A=C(r x s)r x s
A B
1
1
1
1
2
2
2
2
C D
10
0
10
0
20
0
10
0
E
a
a
b
b
a
a
b
b
n r – s:
A B
1
2
1
A B
2
3
r
s
A B
1
1
5. CHAPTER 4
Operasi Tambahan
Operasi tambahan yang didefinisikan tidak menambah kelebihan dari relational algebra, membuat sederhana
query-query yang umum.
Set intersection
Natural join
Division
Assignment
Set-Intersection
Intersection : (cap)
Notasi :r s
Didefinisikan:
r s = { t | t randt s }
Assume:
r, s have the same arity
attribute dari r dan s compatible
Note: r s = r – (r – s)
► Contoh Set-Intersection
Natural-Join
:(bow-tie)Join
Example:
R = (A, B, C, D)
S = (E, B, D)
Result schema = (A, B, C, D, E)
rs didefinisikan:
A
B 1
2
1
A B
2
3
r s
A B
2
n
Notation
: r s
6. CHAPTER 4
r.A, r.B, r.C, r.D, s.E ( r.B = s.B r.D = s.D (r x s))
► Contoh Natural-Join
A
B
1
2
4
1
2
C D
a
a
b
a
b
B
1
3
1
2
3
D
a
a
a
b
b
E
r
A B
1
1
1
1
2
C D
a
a
a
a
b
E
sn r s