bab 3 model basis data -...
TRANSCRIPT
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.
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
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
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).
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.
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.
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
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
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.
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
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
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>
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
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
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.
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
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>
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
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>
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>
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>
22
TH adalah: