17
Basis D Aljabar R Data 1 Relasional 1

BD1 08 [Aljabar Relasional] - Official Site of Rini ...rinia.staff.gunadarma.ac.id/Downloads/files/47918/Aljabar+Relasional.pdf · Basis Data AljabarRelasional Pertem 1 ... Contohriil:

Embed Size (px)

Citation preview

Basis Data

Aljabar Relasional

Basis Data

Pertem

1

Pertem

Relasional

noor.ifada@if.

1

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

Cartesian Product

X

Cartesian Product (X) (contd-2)

=

17

Jumlah baris R X S = 2 * 3 = 6

Jumlah attribute R X S = 2

17