6.Aplikasi ALjabar Relasional - Lisna Zahrotun

advertisement
ALJABAR RELASIONAL
PERTEMUAN 6
oleh :
Lisna Zahrotun, S.T, M.Cs
[email protected]
Teknik Informatika UAD
1
TUJUAN :
MHS MEMAHAMI KONSEP TENTANG
RELASI N ARRAY SERTA APLIKASINYA
BASIS DATA RELASIONAL
Pokok Bahasan
 pengertian relasi n-array
 contoh relasi
 pengertian basis data relasional
 operasi seleksi, proyeksi, join
 contoh kasus
2
Relasi n-ary
 Relasi biner hanya menghubungkan antara dua buah
himpunan.
 Relasi yang lebih umum menghubungkan lebih dari dua buah
himpunan. Relasi tersebut dinamakan relasi n-ary (baca:
ener).
 Jika n = 2, maka relasinya dinamakan relasi biner (bi = 2).
Relasi n-ary mempunyai terapan penting di dalam basisdata.
 Misalkan A1, A2, …, An adalah himpunan. Relasi n-ary R
pada himpunan-himpunan tersebut adalah himpunan bagian
dari A1  A2  …  An , atau dengan notasi R  A1  A2  …
 An. Himpunan A1, A2, …, An disebut daerah asal relasi dan n
disebut derajat.
3
Contoh 22. Misalkan
NIM = {07018001, 07018002, 07018003, 07018004,
07018005, 07018006}
Nama = {Anni, Bimo , Riri, Hafiz, Rini,Widi}
MatKul = {Matematika Diskrit, Basis Data, Algoritma, Sistem
Informasi }
Nilai = {A, B, C, D, E}
Relasi MHS terdiri dari 5-tupel (NIM, Nama, MatKul, Nilai):
MHS  NIM  Nama  MatKul  Nilai
4
Satu contoh relasi yang bernama MHS adalah
MHS = { (07018001, Ani, Matematika Diskrit,A),
(07018001, Ani, Basis Data,B),
(07018002, Bimo, Matematika Diskrit,D),
(07018002, Bimo, Sistem Informasi,C),
(07018003, Riri, Basis Data,B),
(07018003, Riri, Algoritma,E),
(07018003, Riri, Sistem Informasi,B),
(07018004, Hafiz, Matematika Diskrit,B),
(07018004, Hafiz, Basis Data,B),
(07018005, Rini, Algoritma,A),
(07018006, Widi, Sistem Informasi,C),
(07018006, Widi, Basis Data,B) }
5
Relasi MHS di atas juga dapat ditulis dalam bentuk Tabel:
NIM
07018001
07018001
07018002
07018002
07018002
07018003
07018003
07018003
07018004
07018004
07018005
07018006
07018006
Nama
Ani
Ani
Bimo
Bimo
Bimo
Riri
Riri
Riri
Hafiz
Hafiz
Rini
Widi
Widi
MatKul
Matematika Diskrit
Basis Data
Matematika Diskrit
Algoritma
Sistem Informasi
Basis Data
Algoritma
Sistem Informasi
Matematika
Diskrit
Basis Data
Algoritma
Sistem Informasi
Basis Data
Nilai
A
B
D
C
C
B
E
B
B
B
A
C
B
6
 Basisdata (database) adalah kumpulan tabel.
 Salah satu model basisdata adalah model basisdata
relasional (relational database). Model basisdata ini
didasarkan pada konsep relasi n-ary.
 Pada basisdata relasional, satu tabel menyatakan satu relasi.
Setiap kolom pada tabel disebut atribut. Daerah asal dari
atribut adalah himpunan tempat semua anggota atribut
tersebut berada.
 Setiap tabel pada basisdata diimplementasikan secara fisik
sebagai sebuah file.
 Satu baris data pada tabel menyatakan sebuah record, dan
setiap atribut menyatakan sebuah field.
 Secara fisik basisdata adalah kumpulan file, sedangkan file
adalah kumpulan record, setiap record terdiri atas sejumlah
field.
 Atribut khusus pada tabel yang mengidentifikasikan secara
unik elemen relasi disebut kunci (key).
7
 Operasi yang dilakukan terhadap basisdata dilakukan dengan
perintah pertanyaan yang disebut query.
 Contoh query:
“tampilkan semua mahasiswa yang mengambil mata kuliah
Matematika Diskrit”
“tampilkan daftar nilai mahasiswa dengan NIM = 13598015”
“tampilkan daftar mahasiswa yang terdiri atas NIM dan mata
kuliah yang diambil”
 Query terhadap basisdata relasional dapat dinyatakan secara
abstrak dengan operasi pada relasi n-ary.
 Ada beberapa operasi yang dapat digunakan, diantaranya
adalah seleksi, proyeksi, dan join.
8
Seleksi
Operasi seleksi memilih baris tertentu dari suatu tabel yang
memenuhi persyaratan tertentu.
Operator: 
Contoh 23. Misalkan untuk relasi MHS kita ingin menampilkan
daftar mahasiswa yang mengambil mata kuliah Matematik Diskrit.
Operasi seleksinya adalah
Matkul=”Matematika Diskrit” (MHS)
Hasil:
(13598011, Amir, Matematika Diskrit, A) dan
(13598025, Hamdan, Matematika Diskrit, B)
9
Proyeksi
Operasi proyeksi memilih kolom tertentu dari suatu tabel. Jika ada
beberapa baris yang sama nilainya, maka hanya diambil satu kali.
Operator: 
Contoh 24. Operasi proyeksi
Nama, MatKul, Nilai (MHS)
menghasilkan Tabel 3.5. Sedangkan operasi proyeksi
NIM, Nama (MHS)
menghasilkan Tabel 3.6.
10
Tabel 3.5
Nama
Amir
Amir
Santi
Irwan
Irwan
Irwan
Ahmad
Cecep
Cecep
Hamdan
Hamdan
Hamdan
Hamdan
MatKul
Matematika Diskrit
Arsitektur Komputer
Algoritma
Algoritma
Struktur Data
Arsitektur Komputer
Algoritma
Algoritma
Arsitektur Komputer
Matematika Diskrit
Algoritma
Struktur Data
Arsitektur Komputer
Tabel 3.6
Nilai
A
B
D
C
C
B
E
B
B
B
A
C
B
NIM
13598011
13598014
13598015
13598019
13598021
13598025
Nama
Amir
Santi
Irwan
Ahmad
Cecep
Hamdan
11
Join
Operasi join menggabungkan dua buah tabel menjadi satu bila
kedua tabel mempunyai atribut yang sama.
Operator: 
Contoh 25. Misalkan relasi MHS1 dinyatakan dengan Tabel 3.7
dan relasi MHS2 dinyatakan dengan Tabel 3.8.
Operasi join
NIM, Nama(MHS1, MHS2)
menghasilkan Tabel 3.9.
Tabel 3.7
NIM
13598001
13598002
13598004
13598006
13598007
Tabel 3.8
Nama
Hananto
Guntur
Heidi
Harman
Karim
JK
L
L
W
L
L
NIM
13598001
13598001
13598004
13598006
13598006
13598009
13598010
Nama
Hananto
Hananto
Heidi
Harman
Harman
Junaidi
Farizka
MatKul
Algoritma
Basisdata
Kalkulus I
Teori Bahasa
Agama
Statisitik
Otomata
Nilai
A
B
B
C
A
B
C
Tabel 3.9
NIM
13598001
13598001
13598004
13598006
13598006
Nama
Hananto
Hananto
Heidi
Harman
Harman
JK
L
L
W
L
L
MatKul
Algoritma
Basisdata
Kalkulus I
Teori Bahasa
Agama
Nilai
A
B
B
C
A
12
BASIS DATA BANK
branch (branch_name, branch_city, assets)
customer (customer_name, customer_street,
customer_city)
account (account_number, branch_name,
balance)
loan (loan_number, branch_name, amount)
depositor (customer_name, account_number)
borrower (customer_name, loan_number)
13
CONTOH KUERI

Dapatkan semua pinjaman lebih dari $1200
amount > 1200 (loan)
 Dapatkan nomor pinjaman yang setiap jumlah pinjamnnya lebih dari
$1200
loan_number (amount > 1200 (loan))

Dapatkan semua nama pelanggan
yang mempunyai pinjaman, rekening
atau keduanya
customer_name (borrower)  customer_name (depositor)
14
KUERI LAIN..

Dapatkan nama pelanggan yang mempunyai
pinjaman di cabang Perryridge
customer_name (branch_name=“Perryridge”
(borrower.loan_number = loan.loan_number(borrower x loan)))
 Dapatkan nama pelanggan yang punya pinjaman di
Perryridge tetapi tidak punya rekening di cabang lain.
customer_name (branch_name = “Perryridge”
(borrower.loan_number = loan.loan_number(borrower x loan))) –
customer_name(depositor)
15
KUERI LAIN..

Dapatkan semua pelanggan yang punya rekening
di seluruh cabang di kota Brooklyn.
customer_name, branch_name (depositor account)
 branch_name (branch_city = “Brooklyn” (branch))
16
CONTOH SOAL

Diberikan skema relasi
 mhs(nim,nama,
alamat)
 ambil(nim,matakuliah,smr,tahun,nilai)
 matakuliah(kodekul,nama kul,sks)
Soal :
 1. Tampilkan mahasiswa pengambil matakuliah
basis data

17



2. Tampilkan mahasiswa pengambil mata kuliah basis
data yang tidak lulus (nilai D,E)
3. Tampilkan kode kuliah, nama mata kuliah yang
diambil oleh nim=‘007’
4. Tampilkan kode kuliah, nama mata kuliah ,nilai
yang diambil oleh nim=‘007’tetapi tidak diambil oleh
nim=‘010’
18
DAFTAR PUSTAKA





Doer Allan, Kenneth Levasseur, Applied Discrete
Structures for Computer Science, Science Research
Associates, Inc. Toronti,1985
Kolman, Bernard, Robert C.Busby,Sharon Ross,
Discrete Mathematical Structures,Prentice Hall,1987
Munir, Rinaldi, Matematika Diskrit, Edisi
kedua,Penerbit Informatika Bandung,2001
Rosen,Kenneth H.,Discreete Mathematics and Its
Application, The Random House Birkhauser
Mathematics Series NewYork,1987
Setyadi, Tedi, Diktat Matematika Diskrit, Universitas
Ahmad Dahlan
19
WEB SITE
http://syssci.atu.edu/math/faculty/finan/main
2.pdf
 http://www1.cs.columbia.edu/~zeph/3203s04
/lectures.html
 http://www.informatika.org/~rinaldi/Matdis/m
atdis.htm

20
Download