bd1 08 [aljabar relasional] - official site of rini...
Post on 16-Jun-2019
247 Views
Preview:
TRANSCRIPT
Sub Pokok Bahasan
Formal Relational Query Languages
Operasi Dasar:
Unary
BinaryBinary
Sub Pokok Bahasan
Formal Relational Query Languages
22
Formal Relational Query Languages
Query Language: digunakan untuk memanipulasi
suatu basisdata relasional
Bentuk matematis:
1. Relational Algebra: procedural (operational) language
2. Relational Calculus: declarative (non
Contoh riil: SQL (Structured Query Language)
Formal Relational Query Languages
memanipulasi dan memperoleh data dari
Relational Algebra: procedural (operational) language
3
Relational Calculus: declarative (non-operational) language
: SQL (Structured Query Language)
3
Operasi
Unary: melibatkan satu buah operand
Selection
Projection
Binary: melibatkan dua buah operand
Union
IntersectionIntersection
Difference
Cartesian Product
Operasi Dasar
operand
operand
44
Selection
Merupakan operasi pemilihan
(sekumpulan) baris yang
memenuhi suatu kondisi tertentu
dari suatu relasi (tabel)
Sintaks: σ (R)Sintaks: σPredicate (R)
Predicate: kondisi yang ditentukan
R : relasi (tabel)
Selection (σ)
55
Selection
Soal: Buatlah daftar mahasiswa yang
Query: σ GPA > 8.0 (STUDENT)
Hasil Query:
Selection (σ) (contd-2)
6
yang memiliki GPA lebih dari 8.0!
6
Projection
Merupakan operasi pemilihan
(sekumpulan) kolom tertentu
dari suatu relasi (tabel)
Sintaks: πa1,a2, … an (R)
a : attribute (kolom)a : attribute (kolom)
R : relasi (tabel)
Projection (Π)
77
Projection
Soal: Buatlah daftar nama dan gaji (salary) Soal: Buatlah daftar nama dan gaji (salary)
Query: π Name, Salary (STAFF)
Hasil Query:
Projection (Π) (contd-2)
(salary) dari seluruh staf!
8
(salary) dari seluruh staf!
8
Projection
Soal: Buatlah daftar nama dan tanggalSoal: Buatlah daftar nama dan tanggal
memiliki gaji lebih besar dari 10,000!
Query: π Name, Date of birth (σ Salary > 10,000
Hasil Query:
Projection (Π) (contd-3)
tanggal lahir (date of birth) dari staf yang
9
tanggal lahir (date of birth) dari staf yang
10,000!
Salary > 10,000 (STAFF))
9
Union
Operasi union antara dua relasi
R dan S menghasilkan sebuah
relasi yang memiliki seluruh
baris (tuple) dari R atau S atau
keduanyakeduanya
Tidak ada duplikasi baris
Syarat: Union-compatible
(kedua relasi memiliki jumlah
kolom dan domain yang sama)
Sintaks: R U S
R, S : relasi (tabel)
Union (U)
1010
Union
Soal: Gabungkan data yang ada di Customer 1 Soal: Gabungkan data yang ada di Customer 1
Query: Customer 1 U Customer 2
Hasil Query:
Union (U) (contd-2)
Customer 1 dengan Customer 2!
11
Customer 1 dengan Customer 2!
11
Intersection
Operasi intersection antara dua
relasi R dan S menghasilkan
sebuah relasi yang seluruh baris
(tuple)-nya adalah baris yang
sama-sama dimiliki oleh keduasama-sama dimiliki oleh kedua
relasi tersebut
Syarat: Union-compatible
Sintaks: R ∩ S
R, S : relasi (tabel)
Intersection (∩)
1212
Intersection
Soal: Tentukan interseksi antara data yang Soal: Tentukan interseksi antara data yang
Customer 2!
Query: Customer 1 ∩ Customer 2
Hasil Query:
Intersection (∩) (contd-2)
data yang ada di Customer 1 dengan
13
data yang ada di Customer 1 dengan
13
Difference
Operasi difference antara dua
relasi R dan S menghasilkan
sebuah relasi yang seluruh baris
(tuple)-nya adalah baris yang
ada di R namun tidak ada di Sada di R namun tidak ada di S
Syarat: Union-compatible
Sintaks: R ─ S
R, S : relasi (tabel)
Difference (─)
1414
Difference
Soal: Tentukan difference antara data yang Soal: Tentukan difference antara data yang
Customer 2!
Query: Customer 1 ─ Customer 2
Hasil Query:
Difference (─) (contd-2)
data yang ada di Customer 1 dengan
15
data yang ada di Customer 1 dengan
15
Cartesian Product
Nama lain: cross-product
Operasi cartesian product antara dua
baris (tuple) yang ada di R dengan setiap
Seluruh atrribute yang ada di kedua relasi
Sintaks: R X S
R, S : relasi (tabel)
Jika R memiliki baris sejumlah n1, dan
operasi R S = n1 * n2
Cartesian Product (X)
dua relasi R dan S “menggabungkan“ setiap
setiap baris (tuple) yang ada di S
relasi akan dimiliki oleh hasil operasi
16
dan S sejumlah n2, maka jumlah baris hasil
16
top related