Aljabar Relasional.

Slides:



Advertisements
Presentasi serupa
Aljabar Relasional Materi pertemuan.
Advertisements

ALJABAR RELATIONAL Materi Pertemuan 22,23 dan 24.
Aljabar Relasional (Relational Algebra)
3. MATRIKS, RELASI, DAN FUNGSI
TRANSFORMASI MODEL DATA ER ke BASIS DATA
Bahasa Pada Model Data Relasional
Entity-Relationship Model
ALJABAR RELASIONAL (RELATIONAL ALGEBRA)
ALJABAR RELASIONAL Mata Kuliah : Database 1 Dosen : Tessy Badriyah.
Bahasa Query Formal Aljabar Relasional.
Pertemuan Minggu Ke-4 Bahasa Query Formal.
Model & Aljabar Relasional
Aljabar Relasional.
2 Bab 2 Model Basis Data Relasional Basis Data
Aljabar Relasional Materi pertemuan.
Transformasi ERD Ke Bentuk Fisik
ALJABAR RELASIONAL BASIS DATA Team Teaching Basis Data Oleh
Aljabar Relasional.
BAB VI Model Data.
Aljabar Relasional (Relational Algebra)
Himpunan.
Aljabar Relasional Pertemuan 22.
Aljabar Relasional Materi pertemuan 21.
PERTEMUAN 13 Sistem Basis Data Presented by :
4.10 Relasi n-ary Relasi n-ary adalah relasi yang menghubungkan
Karakteristik, Komponen, Primary Key
Transformasi ERD ke dalam bentuk fisik Materi Pertemuan ke-8
Oleh: Henry Primandari,S.Kom STMIK-MDP Palembang
Sesi V Aljabar & Kalkulus Relasional
Query Bahasa Formal.
Aljabar Relasional Materi pertemuan.
SQL (Structured Query Language) Materi Pertemuan
Aljabar Relasional.
4. RELASI.
Pertemuan 9 BAHASA QUERY FORMAL.
BAHASA QUERY TERAPAN OLEH : HARSITI, ST.
ALJABAR RELATIONAL.
SQL (Structured Query Language)
Aljabar Relasional Materi pertemuan.
SQL (Structured Query Language)
Model Basis Data Relasional
Aljabar Relasi SBD.
bahasa Query basis data bab 8
Aljabar Relasional (Relational Algebra)
ALJABAR RELASIONAL
Operasi Relasional Basis Data
ALJABAR RELASIONAL BASIS DATA I/2009-GENAP
SQL (Structured Query Language)
Harsiti, ST Fakultas Teknologi Informasi Universitas Serang Raya 2009
SQL (Structured Query Language)
ALJABAR RELASIONAL DAN KALKULUS RELASIONAL
ALJABAR RELASIONAL (latihan)
Model Relational DATABASE
SQL (Structured Query Language)
Presented by Team Basis Data
BASIS DATA Relasi Aljabar (1) 1.
Operasi Relasional Basis Data
Aljabar Dan Kalkulus Relasional
BASIS DATA Relasi Aljabar (2) 1.
Aljabar Relasional.
Pertemuan ke-11 Bahasa Query Formal.
BAHASA KUERI.
Aljabar Relational.
Basis Data - Udinus Semarang
Yufis Azhar – Teknik Informatika – UMM
Yufis Azhar – Teknik Informatika – UMM
Basis Data Bahasa Kueri Basis Data
Model dan Aljabar Relasional
ALJABAR RELASIONAL (LANJUTAN)
Basis Data Bahasa Kueri Basis Data
Transcript presentasi:

Aljabar Relasional

Operasi Union Operasi Union digunakan untuk menggabungkan data dari dua kelompok baris data (record/row) yang sejenis Simbol yang digunakan : U Sintaks : E1 U E2

Syarat yang harus dipenuhi terhadap operasi Union antara E1 dan E2 1. E1 dan E2 harus memiliki jumlah atribut/field yang sama 2. Domain dari atribut/field ke-i dari E1dan atribut/field ke-i dari E2 harus sama

Contoh Ilustrasi Operasi Union

Operasi Union Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang sama sehingga jumlah komponennya sama. Tabel Mahasiswa NIM NAMA_MHS ALAMAT_MHS KOTA TGL_LHR 980001 Ali Akbar Jl. Merdeka Bogor 02-01-1979 980002 Budi Haryanto Jl. Gajah Mada Jakarta 06-10-1978

Tabel Dosen KODE_DOS NAMA_DOS ALAMAT_DOS KOTA SY Syamsudin, S.Si Jl. Suci Bekasi FS Farida Syarif, Ir Jl. Tenteram Jakarta

Contoh Operasi Union Jila dilakukan operasi union :  kota (mahasiswa)  kota (Dosen) Maka hasilnya : KOTA Bogor Jakarta Bekasi

Tabel Depositor Tabel Borrower Customer_Name Account_Number Johnson A-101 Smith A-215 Hayes A-102 Turner A-305 A-201 Jones A-217 Lindsay A-222 Customer_Name Loan_Number Jones L-17 Smith L-23 Hayes L-15 Jackson L-14 Curry L-93 L-11 Williams Adams L-16

Hasil Query Customer_Name Johnson Smith Hayes Turner Jones Lindsay Jackson Curry Williams Adams

Operasi Set Difference Set-difference ( - ), adalah operasi untuk mendapatkan table pada suatu relasi, tapi tidak ada pada relasi yang lainnya. Operasi set difference harus dilakukan pada relasi yang kompatibel : Domain atribut r dan s harus kompatibel Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut : R – S = { x | xR dan X  S} Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang tidak sama yang akan ditampilkan, artinya adalah atribut R yang tidak ada di S akan ditampilkan, sedangkan atribut yang sama tidak ditampilkan.

Contoh Ilustrasi Operasi Set Difference

Contoh Operasi Set Difference Jika tabel Kuliah_S1 dan Tabel Kuliah_D3 berisi data sebagai berikut : Tabel Kuliah_S1 Kode_kul Nama_kul Sks semester IF-110 Pemrograman I 3 1 IF-221 Struktur Data 2 IF-310 Basis Data 4 IF-320 Pemrograman II IF-411 Sistem Basis Data IF-423 Sistem Pakar

Contoh Operasi Set Difference Tabel Kuliah_D3 Kode_kul Nama_kul Sks semester IF-110 Pemrograman I 3 1 IF-120 Aplikasi Akuntansi 2 IF-221 Struktur Data IF-310 Basis Data 4

Contoh Operasi Set Difference Maka hasil operasi : nama_kul (Kuliah_S1) - nama_kul (Kuliah_D3) Nama_kul Pemrograman II Sistem Basis Data Sistem Pakar

Operasi Cartesian Product Operasi ini digunakan untuk menggabungkan data dari dua buah tabel atau lebih Simbol yang digunakan : x Sintaks : E1 x E2 E1 = ekspresi aljabar relasional 1 E2 = ekspresi aljabar relasional 2

Menunjukkan semua record di E1 akan dipasangkan dengan semua record di E2 dan hasil dari operasi ini akan memuat semua field yang ada di E1 dan di E2 Sifat Operasi : Komutatif Artinya E1 x E2 hasilnya sama dengan E2 x E1

Contoh : operasi cartesian product antara tabel mahasiswa dan kuliah dinotasikan sebagai berikut : mahasiswa x kuliah Operasi cartesian product umumnya digunakan bersama dengan operasi lainnya seperti operasi Seleksi dan Projeksi dengan berbagai kebutuhan

Penggabungan relasi umumnya dilakukan diantara dua tabel yang memiliki keterhubungan dimana keterhubungan tersebut ditandai dengan adanya field yang sama Contoh : jika kita ingin menampilkan data NPM, Nama Mahasiswa dan Mata Kuliah yang diambil yang berkode ‘MK01’ maka sintaksnya

Cartesian / Cross-Product Cross Product biasa dikenal dengan Operasi Cartesian-product. Operasi Cartesian-product disimbolkan dengan “x”. Dengan operasi ini dapat dihasilkan informasi yang merupakan kombinasi dari dua tabel. Secara garis besar, jika dipunyai relasi r1(R1) dan r2(R2), maka r1 x r2 adalah tabel yang skemanya merupakan gabungan dari R1 ( atribut-atribut relasi r1) dan R2 (atribut-atribut r2).

Contoh Ilustrasi Operasi Cartesian-Product

TH = DOSEN x MAHASISWA Tabel Hasil adalah:

Operasi Cartesian Product Operasi cartesian-product memungkinkan kita mengkombinasikan informasi beberapa relasi, operasi ini adalah operasi biner. Sebagaimana telah dinyatakan bahwa relasi adalah subset hasil cartesian-product dan himpunan domain relasi – relasi tersebut. Kita harus memilih atribut – atribut untuk relasi yang dihasilkan dari cartesian-product.

Contoh Operasi Cartesian Product Tampilkan nid,nama_d (dari relasi Dosen), nama_mk (dari relasi Matakuliah), thn_akademik,smt,hari,jam_ke,waktu,kelas (dari relasi Mengajar) dimana semester mengajar adalah pada semester ‘1’.  nid,nama_d,nama_mk, thn_akademik,smt,hari,jam_ke,waktu,kelas (  smt=1  Dosen.nid=Mengajar.nid  Mengajar.kdmk=Matakuliah.kdmk(DosenxMatakuliahxMengajar))

Contoh Operasi Cartesian Product Tampilkan nama_d (dari relasi Dosen), nama_mk,sks (dari relasi Matakuliah), hari,jam_ke,waktu (dari relasi Mengajar) dimana sks matakuliah >3 atau hari mengajar = ‘Jumat’. nama_d,nama_mk,sks,hari,jam_ke,waktu (  sks>3  hari=’Jumat’  Mengajar.nid=Dosen.nid  Mengajar.kdmk=Matakuliah.kdmk(MengajarxDosenxMatakuliah))

Bentuk operasi umum seperti berikut : Operasi Pembagian Operasi pembagian digunakan untuk menseleksi setiap kejadian pada tabel yang dibawah kontrol satu kelompok nilai dari tebel lain. Bentuk operasi umum seperti berikut : TH = <Nama tabel-1> ÷ <Nama-tabel-2>

TH = PROYEK : KEL-KARY Tabel Hasil adalah: Urut per KD-PROY TH = PROYEK : KEL-KARY Tabel Hasil adalah:

Intersection Operasi intersection menghasilkan suatu tabel baru dengan elemen barisnya merupakan elemen yang terdapat pada tabel r dan elemen tersebut juga terdapat pada tabel s, tidak ada duplikasi data. r dan s harus memiliki jumlah atribut yang sama. Simbol :  Tabel R1 Tabel R2 R1  R2 X Y A C B F X Y D F A C H I X Y A C

Rename Rename ( ρ ) Rename ( ρ ), adalah operasi untuk menyalin table lama kedalam table yang baru. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut : ρ [nama_table] (table_lama)

Contoh : Salinlah table baru dengan nama DosenNew dari table Dosen, dimana jenis kelaminnya adalah ‘Pria’. ρ DosenNew ( σ jkelamin=’Pria’) (Dosen))

Union, Intersection, Set-Difference Semua Operasi ini membutuhkan dua relasi, syarat yang harus di penuhi adalah: Mempunyai jumlah field yang sama Field yang berkorespondensi memiliki tipe yang sama. Misalkan untuk dua tabel relasi S1 dan S2 berikut:

Berikut ini adalah contoh dari ketiga operasi diatas: Union : S1 U S2 Intersection: S1 n S2 Set-Difference:

Contoh : S1 x R1

Contoh Komposisi Beberapa Operasi Contoh: σA=C(r x s)

Contoh Skema Perbankan branch (branch-name, branch-city, assets) customer (customer-name, customer-street, customer-only) loan (loan-number, branch-name, amount) depositor (customer-name, account-number) borrower (customer-name, loan-number)

Contoh Query Cari semua loan yang nilainya lebih dari $1200 σamount > 1200 (loan) Cari nomor loan untuk semua loan yang nilainya lebih dari $1200 Πloan-number (σamount > 1200 (loan))

Contoh Query Cari nama semua customer yang mempunyai loan, account, atau keduanya. Πcustomer-name (borrower) U Πcustomer-name (depositor) Cari nama semua customer yang mempunyai loan dan account. Πcustomer-name (borrower) ∩ Πcustomer-name (depositor)

Join Join merupakan salah satu konstruksi dasar dari SQL dan basis data. Join dapat didefinisikan sebagai kombinasi record dari dua atau lebih tabel di dalam basis data relasional dan menghasilkan sebuah tabel (temporary) baru yang disebut sebagai joined table. Join dapat diklasifikasikan ke dalam tiga jenis: Natural Join ⋈ Condition Join/Theta join Equi Join

Natural Join Membentuk suatu relasi dari dua relasi yang terdiri dari kombinasi yang mungkin dari relasi-relasi. Tabel Dosen Kd_Dosen Nama_Dosen Alamat Kota 09738 Kurniawan Jl. Kenanga 2 Depok Madiun 09536 Fristy Jl. Andalan 3 Jakarta Malang 00058 Gunawarman Jl. Pasir Putih 1 Jakarta Lumajang 09825 Lundi Jl. Gagak 6 Bogor Surabaya 09689 Qiqan Jl. PD 3 Depok Tegal

Tabel Nilai NPM Kd_MK MT_Kuliah Mid Uas Nilai Kd_Dosen 50499025 KD045201 Matematika 1 30 90 C 09738 KU000202 P.Kewiraan 50 80 09536 50499101 KK045326 Basisdata 56 70 00058 KK045337 Sistem Terdistribusi 96 75 A 09825 KK045305 Algoritma 100 B 09689 50499451 85 60

Tampilkan Kd_dosen,Nama_Dosen, MT_Kuliah, dan nilai dari semua dosen yang telah mengisi nilai untuk tabel nilai. 𝜋 kd_dosen,Nama_Dosen (Dosen) ⋈ 𝜋 Kd_dosen,MT_Kuliah,Nilai (Nilai)

Hasil : Dosen.Kd_Dosen Nama MT_Kuliah Nilai 09738 Kurniawan Matematika 1 C 09536 Fristy P.Kewiraan 00058 Gunawarman Basisdata 09825 Lundi Sistem Terdistribusi A 09689 Qiqan Algoritma B

Condition Join / Theta Join Membentuk suatu relasi dari dua relasi yang terdiri dari kombinasi yang mungkin dari relasi-relasi dengan kondisi tertentu. Jika perintah ini di batasi dengan Kd_dosen pada file Dosen = Kd_dosen yang ada pada file Nilai Aljabar relasional: (𝜋NPM,MT_Kuliah,Nilai,Nilai.Kd_Dosen, Dosen. Kd_Dosen,Nama_Dosen( Dosen.Kd_Dosen=Nilai.Kd_Dosen  Dosen.Nama_Dosen=’Lundi’ (Nilai X Dosen) )

Hasil NPM MT_Kuliah Nilai Nilai.Kd_Dosen Dosen.Kd_Dosen Nama_Dosen 50499101 Sistem Terdistribusi A 09825 Lundi 50499451

Equi Join kondisi penggabungan berdasarkan persamaan nilai pada kolom bersama Tabel Mahasiswa nid nama alamat kota 8801 Adriani Arya Jl. Merdeka No. 43 Lumajang 8802 Ali Akbar Jl. Anggrek No. 19 Malang 8803 Haryanto Jl. Dayang No. 88 Surabaya

Mahasiswa ⋈ nid Jurusan Tabel Jurusan Mahasiswa ⋈ nid Jurusan nid usia jurusan 8801 19 Teknik Informatika 8802 18 Sistem Informasi nid nama alamat kota Usia Jurusan 8801 Adriani Arya Jl. Merdeka No. 43 Lumajang 19 Teknik Informatika 8802 Ali Akbar Jl. Anggrek No. 19 Malang 18 Sistem Informasi