bab 3 model basis data -...

22
1 ALJABAR RELASIONAL PADA TABEL 1. Pendahuluan Relasi aljabar/aljabar relasional digunakan untuk manipulasi data dalam basis data. Operasi ini digunakan, misalnya untuk melakukan seleksi isi baris pada tabel dan kemudian dikombinasikan dengan tabel lain untuk memperoleh informasi yang diinginkan.

Upload: lamtuong

Post on 25-Mar-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

1

ALJABAR RELASIONAL PADA TABEL

1. Pendahuluan Relasi aljabar/aljabar relasional digunakan

untuk manipulasi data dalam basis data.

Operasi ini digunakan, misalnya untuk

melakukan seleksi isi baris pada tabel dan

kemudian dikombinasikan dengan tabel lain

untuk memperoleh informasi yang diinginkan.

Page 2: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

2

Perintah operasi aljabar ditulis dalam bentuk

pernyataan. Sedangkan hasil operasi aljabar

merupakan tabel baru, dan tabel ini juga dapat

dimanipulasi lagi.

Tabel MataKuliah Tabel Registrasi

Kd_MK Nama_MK SKS NIP

A01 Matematika 3 130000

A02 Log & Algoritma 2 130010

A03 Kalkulus 2 130555

B01 Basis Data 2 130523

B03 RPL 3 131612

Kd_MK

NIM

A01 10510

A01 10612

B01 10612

A02 11234

B01 10610

Page 3: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

3

Tabel Mahasiswa Tabel Fakultas

Tabel Dosen

NIM Nama Jurusan Fakultas

10510 Adi KA Akuntansi

10612 Tori KA Akuntansi

11524 Widya SI Informasi

11234 Mila SI Informasi

11456 Buddy TI Teknik

10456 Tata MI Manajemen

11589 Poltak TK Komputer

Fakultas Jml_Dos Jml_Mhs

Akuntansi 200 5010

Bahasa 350 7505

Sastra 120 3500

Informasi 150 4000

Teknik 250 5019

Manajemen 300 3600

Komputer 75 2107

NIP

Nama_Dos

Golongan

130000 Suryo IV

130010 Candra IV

130555 Adam IV

130523 Hasan IV

131612 Aman III

Page 4: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

4

2. Aljabar Relasional Operasi aljabar relasional pada tabel dapat

dikelompokkan menjadi dua kategori.

a. Kategori pertama meliputi operasi seleksi baris,

seleksi kolom (proyeksi), dan operasi

penggabungan (join).

b. Sedangkan kategori kedua mencakup operasi

Union, Interseksi, Selisih (Difference),

Pembagian dan Perkalian Kartesian (Cartesian

Product).

Page 5: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

5

Seleksi Baris Operasi ini digunakan untuk memilih isi baris

pada tabel yang memenuhi kondisi yang

ditentukan.

Secara umum operasi seleksi baris dituliskan

sebagai berikut:

TH = B<kondisi> (<nama tabel>)

Dalam hal ini TH adalah tabel hasil, dan B

digunakan untuk notasi seleksi baris, yang

kemudian diikuti dengan kondisi yang

ditentukan.

Page 6: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

6

Kondisi seleksi menggunakan operator Boolean

(=, <, >, <=, >=, <>) untuk nilai atribut pada

tabel. Kondisi dengan operator Boolean juga

dapat dihubungkan dengan operator AND, OR,

dan NOT.

Contoh (berdasarkan tabel diatas):

TH = BJurusan = ‘KA’ (Mahasiswa)

Perintah ini digunakan untuk menseleksi baris

dalam tabel Mahasiswa yang berisi daftar

mahasiswa yang kuliah di jurusan KA.

Page 7: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

7

TH seleksi adalah:

Contoh lain :

TH = BJml_Dos<150 AND Jml_Mhs>3000 (Fakultas)

Operasi ini digunakan untuk menampilkan

baris pada tabel Fakultas dengan syarat

Jml_Dos < 150 dan Jml_Mhs > 3000.

No_Mhs

Nama

Jurusan

Fakultas

10510 Adi KA Akuntansi

10612 Tori KA Akuntansi

Page 8: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

8

TH seleksi adalah:

Seleksi Kolom Operasi ini digunakan untuk memilih kolom

atribut pada tabel. Dalam bentuk umum perintah untuk operasi ini adalah:

TH = K<kolom atribut pilihan> (<nama tabel>)

Fakultas Jml_Dos Jml_Mhs

Sastra 120 3500

Page 9: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

9

Notasi K sebagai tanda perintah seleksi kolom

atribut yang akan dipilih dari tabel yang

ditentukan, sehingga diperoleh tabel hasil / TH.

Contoh:

TH = KNIP, Nama_Dos (Dosen)

Perintah ini untuk memilih daftar dosen dengan

menampilkan NIP dan Nama_Dos dari tabel

Dosen.

Page 10: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

10

TH dari operasi ini adalah:

Contoh Lain

TH = KJurusan (Mahasiswa)

Perintah ini untuk menampilkan kolom Jurusan pada

tabel Mahasiswa.

NIP Nama_Dos

130000 Suryo

130010 Candra

130555 Adam

130523 Hasan

131612 Aman

Page 11: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

11

TH dari operasi ini adalah:

Dapat dilihat, dari tujuh baris yang ada dalam tabel Mahasiswa, hanya 5 baris yang ditampilkan. Hal ini disebabkan hasil dalam seleksi kolom, sehingga nilai duplikasi atribut akan dihilangkan.

Jurusan

KA

SI

TI

MI

TK

Page 12: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

12

Operasi Penggabungan (Join)

Operasi penggabungan tabel dapat dilakukan jika

antara tabel-tabel yang akan digabungkan

mempunyai kolom nilai atribut yang sama sebagai

dasar penggabungan.

Perintah operasi penggabungan adalah:

TH = <namatabel1>G<kondisi gabungan><nama tabel2>

Page 13: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

13

TH merupakan nama tabel hasil

penggabungan, G sebagai notasi operasi

penggabungan sedangkan kondisi gabungan

merupakan kolom atribut sebagai basis.

Contoh:

Menggabung tabel mata_kuliah dan tabel

dosen dengan kondisi gabungan adalah atribut

NIP.

TH = Mata_Kuliah G NIP = NIP Dosen

Page 14: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

14

Hasilnya adalah:

Kd_MK Nama_MK SKS NIP NIP Nama_Dos Golongan

A01 Matematika 3 130000 130000 Suryo IV

A02 Log & Algoritma 2 130010 130010 Candra IV

A03 Kalkulus 2 130555 130555 Adam IV

B01 Basis Data 2 130523 130523 Hasan IV

B03 RPL 3 131612 131612 Aman III

Page 15: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

15

Union, Interseksi, dan Selisih Ketiga operasi ini hanya dapat dilakukan pada

dua tabel atau lebih yang menpunyai atribut-

atribut dengan domain (nilai atribut yang harus

diisikan dalam suatu tabel sesuai dengan

ketentuan) yang sama.

Contoh: tabel Karyawan dan Pensiunan,

masing-masing mempunyai dua kolom atribut

yaitu No_Kary dan Nama dengan spesifikasi

domain yang sama.

Page 16: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

16

No_Kary Nama

K12 Himawan

K25 Jatmiko

K26 Rudi

K30 Hasto

K20 Roni

Tabel Karyawan Tabel Pensiunan

No_Kary Nama

K10 Nanang

K11 Rita

K25 Jatmiko

K20 Roni

Page 17: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

17

Operasi Union

Operasi ini menggabungkan nilai tabel-tabel

sehingga menghasilkan tabel baru yang berisi

semua baris dari tabel asal dengan

menghilangkan nilai baris yang sama.

Perintah operasi ini adalah:

TH = <nama tabel1> <nama tabel2>

Page 18: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

18

Contoh:

TH = <Karyawan> <Pensiunan>

Hasil Union-nya adalah:

No_Kary Nama

K12 Himawan

K25 Jatmiko

K26 Rudi

K30 Hasto

K20 Roni

K10 Nanang

K11 Rita

Page 19: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

19

Operasi Interseksi (Intersection) Digunakan untuk menyeleksi baris-baris yang muncul

pada kedua tabel asal.

Perintahnya adalah :

TH = <nama tabel1>∩<nama tabel2>

Contoh : Mencari karyawan yang sudah pensiun tapi

masih dipekerjakan

TH = <Karyawan>∩<Pensiunan>

Page 20: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

20

Operasi Selisih Digunakan untuk mengurangi baris pada tabel

pertama dengan baris pada tabel kedua dengan

hasil tabel baru yang hanya berisi baris pada

tabel pertama yang tidak muncul pada tabel

kedua.

Perintahnya :

TH = <nama tabel1> - <nama tabel2>

Page 21: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

21

Perlu diperhatikan bahwa urutan tabel yang

berbeda akan menghasilkan Tabel Hasil yang

berbeda pula. <nama tabel1> - <nama tabel2> ≠ <nama tabel2> - <nama tabel1>

Contoh : Mencari daftar pensiunan yang tidak

dipekerjakan lagi.

TH = <Pensiunan> - <Karyawan>

Page 22: Bab 3 Model Basis Data - si.ilkom.unsri.ac.idsi.ilkom.unsri.ac.id/wp-content/uploads/2018/11/SBD-8-Aljabar-Re... · Fakultas Jml_Dos Jml_Mhs Akuntansi 200 5010 Bahasa 350 7505 Sastra

22

TH adalah: