4_Aljabar Relasional

Post on 05-Jan-2016

226 views 4 download

description

database reference

Transcript of 4_Aljabar Relasional

ALJABAR RELATIONAL

BASIS DATA I

Pengertian

Bahasa query dalam basis data relasional adalah bahasa yang meminta informasi dari basis data. Aljabar relasional adalah bahasa query prosedural. Bahasa prosedural adalah pemakai menginstruksikan ke sistem dengan untuk melakukan sederetan operasi agar diperoleh hasil yang diinginkan.

Operasi Aljabar Relasional1. Operasi Dasar- Select ()- Project (π)- Union ()- Cartesian product (x)- Difference (–)2. Operasi Turunan- Interjection () - Join (∞)- Division (/)Untuk melihat dampak dari setiap operasi tersebut, kita

akan menggunakan relasi-relasi berikut

Dosen={NIP,nama,tLahir,alamat,kota,kodePos,Gpokok}

(Lanjutan)Jurusan = {IdJurusan, nama}

(Lanjutan)Tugas Jurusan={NIP, IdJurusan, TglMulai}

Operasi Select

Select (σ) adalah operasi menyeleksi tupel – tupel yang memenuhi suatu predikat. Dapat menggunakan operator perbandingan (<,≤, =, ≥, ≠) di predikat. Beberapa predikat dapat dikombinasikan menjadi predikat majemuk menggunakan penghubung AND (ᴧ) dan OR (v).

<kondisi pilihan> (<nama relasi>)

Operasi Select (lanj..)Contoh 1Query : daftar dosen yang lahir di TasikmalayaEkspresi aljabar relasional:

Hasilnya adalah :

tLahir=“Tasikmalaya” (Dosen)

Operasi Select (lanj..)Contoh 2Query : daftarkan dosen yang lahir di Tasikmalaya atau Ciamis

Hasilnya adalah:

tLahir=“Tasikmalaya” v tLahir=“Ciamis” (Dosen)

Operasi Project (π)

Project (π) adalah operasi untuk memperoleh kolom – kolom tertentu. Operasi project adalah operasi unary yang mJengirim relasi argumen dengan kolom – kolom tertentu. Karena relasi adalah himpunan maka baris – baris duplikasi dihilangkan.

<daftar attribut> (<nama relasi>)

Operasi Project (π) (lanj..)Contoh : Query : tampilkan kolom NIP, nama, Tempat Lahir, Tanggal

Lahir, dan Gaji Pokok dosen dimana gaji pokoklebih besar dari Rp. 12.000.000

NIP, nama, tLahir, Gpokok(Gpokok>12000000 (Dosen)

12

Operasi Union/Gabungan ()

Tabel r Tabel s pA(r) pA(s)A B C

aa 1 7

bb 5 7

bb 12 7

dd 23 10

A B C

aa 5 7

cc 4 4

dd 10 7

aa 6 10

A

aa

bb

dd

cc

Union () adalah operasi untuk menghasilkan gabungan tabel dengan syarat kedua tabel memiliki atribut yang sama yaitu domain atribut ke-I masing – masing tabel harus sama.

R S = {x Ι x ϵ R atau x ϵ S}

Contoh: Query: Tampilkan NIP dari dosen dimana Gaji pokoknya lebih

besar daripada Rp. 12.000.000Ekspresi aljabar relasional :

NIP(Gpokok>12000000(Dosen))

Operasi Union ()

Operasi Cartesian Product (x)

Operasi cartesian – product (x) adalah operasi untuk menghasilkan tabel hasil perkalian kartesian.

R x S = { (x,y)| x ϵ R dan y ϵ S}

A B

a 1

b 3

C D

a 6

b 5

c 12

A B C D

a 1 a 6

a 1 b 5

a 1 c 12

b 3 a 6

b 3 b 5

b 3 c 12

Tabel R tabel S tabel R x S →

Operasi Cartesian Product (x)Contoh :Query : Cartesian-product (x) relasi Jurusan dengan TugasJurusanEkspresi aljabar relasional:

Jurusan X TugasJurusanHasilnya adalah :

Difference (-)

Difference (-) adalah operasi untuk mendapatkan tabel di suatu relasi tapi tidak ada di relasi lainnya.

R – S = {x | x ϵ R dan x}

A B C

aa 1 7

bb 5 7

bb 12 7

dd 23 10

A

bb

A B C

aa 5 7

cc 4 4

dd 10 7

aa 6 10

Tabel r tabel s pA(r) - pA(s)

Difference (-) ContohQuery: Tampilkan NIP dari nama dosen dimana haji pokoknya lebih

besar daripada Rp 12.000.000 tapi tidak tinggal di JakartaDari Query tadi, terdiri dari komponen dasar:1. Query : Tampilkan NIP dari dosen dimana gaji pokoknya lebih

besar dari Rp.12.000.000Ekspresi oprasi relasional:

NIP(Gpokok>12000000(Dosen))

Hasilnya adalah :

Difference (-)

2. Query : Tampilkan NIP dari dosen yang lahir di Jakarta atau Tasikmalaya.

Ekspresi operasi relasional :

NIP(tLahir=“Jakarta” v tLahir=“Tasikmalaya”(Dosen)) Hasilnya adalah sebagai berikut :

Difference (-) (Lanjutan) Sehingga:Query : Tampilkan NIP dari dosen dimana gaji pokoknya lebih

besar daripada Rp.12.000.000Minus dengan Query : Tampilkan NIP dosen yang lahir di Tasikmalaya atau

Jakarta

NIP(Gpokok>12000000(Dosen)) - NIP(tLahir=“Jakarta” v tLahir=“Tasikmalaya”(Dosen))

Hasilnya adalah :

Operasi – Operasi Turunan

• Intersection () : adalah operasi untuk menghasilkan irisan dua tabel. Syarat operasi adalah kedua tabel memiliki atribut sama, domain atribut ke-i kedua tabel harus sama.

• Join (∞ ): R ∞ S sama dengan operasi σ(RxS) Theta-join : adalah operasi menggabungkan operasi

selection dan cartesian product dengan suatu kriteria. Natural-join : adalah operasi menggabungkan operasi

selection dan cartesian product dengan suatu kriteria pada kolom yang sama

• Division (/) : adalah cocok untuk query – query yang terdapat frase “for all”

SekianTerima Kasih