SlideShare a Scribd company logo
DERIST TOURIANO, ST., M.KOM
DATABASE LANJUTAN
Chapter 2
ALJABAR DAN KALKULUS RELASIONAL
Bahasa query formal basis data relasional adalah bahasa untuk meminta informasi dari
basis data. Sebelum basis data relasional, query terhadap basis data merupakan tugas
yang sangat sukar.
Pemogram harus berususan dengan skema fisik internal dari basis data. Bahasa
query relasional misalkan SQL (sructured query language) berbeda dengan bahasa
pemrograman konvensional. Di SQL, kita menspesifikasikan properti – properti
informasi yang hendak diambil tapi tidak mencantumkan rincian algoritma
pengambilan. SQL adalah deklaratif, yaitu pada query dideklarasikan informasi yang
merupakan jawaban yang dikehendaki bukan cara komputasi.
Query kompleks yag diperlukan pada kebanyakan aplikasi nyata memerlukan
pengetahuan mendalam mengenai bahasa da semantiknya. Bahasa query relasional
formal merupakan bahasa antara yang digunakan basis data, yaitu SQL dikonversi
menjadi bahasa relasional formal sehingga dapa diterapkan sekumpulan informasi
untuk memperoleh query paling efisien. Terdapat dua jenis bahasa query relasional
formal yang utama, yaitu: Aljabar dan Kalkulus Relasional.
Aljabar Relasional
Relational Algebra (aljabar relasional) merupakan kumpulan operasi terhadap relasi
dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu
relasi yang baru dan termasuk kategori prosedural dan juga menyediakan seperangkat
operator untuk memanipulasi data.
Semua operasi tersebut menghasilkan relasi baru. Bahasa disebut aljabar relasional
karena bahasa berdasar sejumlah operator yang beroperasi pada relasi – relasi (tabel –
tabel). Masing –masing operator beroperasi pada satu relasi atau lebih atau
menghasilkan relasi – relasi lain sebagai hasil. Query adalah sekedar ekspresi yang
melibatkan operator – operator itu. Hasil ekspresi adalah relasi yaitu jawaban terhadap
query.
5 Operasi Dasar Dalam Aljabar Relasional Operasi Turunan Dari Operasi Dasar
1. Selection ( σ )
2. Projection ( π )
3. Cartesian – product ( X/Cross Product )
4. Union ( ∪ )
5. Set – difference ( - )
6. Rename ( ρ )
1. Set intersection ( ∩ )
2. Theta join ( θ )
3. Natural join (⋈)
4. Outer-join (⟗ )
5. Division ( ÷ )
SQL adalah bahasa yang deklaratif yang berarti tidak menspesifikasikan algoritma yang
digunakan untuk pengolahan query. Ekspresi relasional dapat dipandang sebagai
spesifikasi algoritma (meskipun dalam level lebih tinggi dibanding algoritma untuk
bahasa pemrograman konvensional).
Pemrogram menggunakan query SQL, DBMS menggunakan aljabar relasional sebagai
bahasa antara dalam spesifikasi algoritma query. Langkah – langkah dalam DBMS untuk
pengolahan query adalah:
1. DBMS melakukan parsing terhadap string dari query SQL dan menerjemahkannya
menjadi ekspresi aljabar relasional yang dapat menuntun kedalam algoritma
sederhana yang tidak efisien.
2. Setelah itu, bagian query optimizer mengkonversi ekspresi aljabar relasional ini
menjadi ekspresi lain yang ekvivalen nemun lebih efisien untuk dieksekusi.
3. Berdasarkan ekpresi aljabar relasional yang telah dioptimasi, query optimizer
mempesiapkan rencana eksekusi query (query execution plan) yang kemudian
ditransformasikan menjadi kode yang dapat dieksekusi pembangkit kode di DBMS.
4. Karena ekspresi aljabar mempunyai semantik matematika yang presisi maka sistem
dapat memferifikasi ekvivalensi ekspresi yang dioptimasi yang dihasilkan dari
manipulasi ekpresi asal. Semantiks ini juga memungkinkan pembandingan rencana –
rencana evaluasi query yang berbeda.
Operasi Aljabar Relasional
Untuk mengimplementasikan kedalam operasi aljabar relasional, berikut ini diberikan
relasi –relasi dari database Penjadwalan_mengajar_dosen pada STIKOM Jambi. Relasi –
relasi tersebut meliputi:
Dosen Mata Kuliah Jurusan Mengajar
nid
nama_dosen
tempat_lhr
tgl_lahir,
jkelamin
alamat
kota
kodepos
gpokok
kdmk,
nama_mk,
sks,
semester
kode_jur,
nama_jur,
jenjang,
nama_kajur
nid
thn_akademik
smt
hari
jam_ke
kdmk,
waktu,
kelas,
kode_jur
Tabel Dosen
Tabel Matakuliah
Tabel Jurusan
Tabel Mengajar
Semua operasi tersebut menghasilkan relasi baru. Bahasa disebut aljabar relasional
karena bahasa berdasar sejumlah operator yang beroperasi pada relasi – relasi (tabel –
tabel). Masing –masing operator beroperasi pada satu relasi atau lebih atau
menghasilkan relasi – relasi lain sebagai hasil. Query adalah sekedar ekspresi yang
melibatkan operator – operator itu. Hasil ekspresi adalah relasi yaitu jawaban terhadap
query.
1. Operasi Selection ( σ )
Selection / Select (σ ), adalah operasi untuk menyeleksi tupel – tupel yang memenuhi
suatu predikat, kita dapat menggunakan operator perbandingan (<,>,>=,<=,=,#) pada
predikat. Beberapa predikat dapat dikombinasikan menjadi predikat majemuk
menggunakan penghubung AND ( ∧ ) dan OR ( ∨ ). Contoh operasi Select:
Query : Tampilkan daftar dosen yang tempat lahirnya di ‘Bekasi’.
Aljabar relasional: σtempat_lhr=’Bekasi’ (Dosen)
2. Operasi Projection ( π )
Projection / Project ( π ), adalah operasi untuk memperoleh kolom – kolom tertentu.
Operasi project adalah operasi unary yang mengirim relasi argumen dengan kolom –
kolom tertentu. Karena relasi adalah himpunan, maka baris – baris duplikasi
dihilangkan. Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut :
π colum1,…,column ( tabel)
Contoh operasi Project:
Query : Tampilkan nid,nama_dosen,alamat,kota dari relasi Dosen
Aljabar relasional: π nid,nama_d,alamat,kota (Dosen)
3. Operasi Cartesian-Product ( X )
Cartesian-product ( X ), adalah operasi untuk menghasilkan table hasil perkalian
kartesian. Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai
berikut :
R X S = {(x,y) | x ϵ R dan y ϵ S}
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:
Query : Tampilkan nid, nama_dosen (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’.
2. Aljabar relasional: π nid, nama_dosen, nama_mk, thn_akademik, smt, hari,
jam_ke, waktu, kelas (σ smt=1 ∧ Dosen.nid = Mengajar.nid ∧ Mengajar.kdmk =
Matakuliah.kdmk (Dosen x Matakuliah x Mengajar))
4. Operasi Union (∪),
Union adalah operasi untuk menghasilkan gabungan table degan syarat kedua
table memiliki atribut yang sama, yaitu domain atribut ke-i masing – masing
table harus sama. Sintaks yang digunakan dalam operasi union ini adalah
sebagai berikut :
R ∪ S = {x | x ϵ R atau X ϵ S}
Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang sama
sehingga jumlah komponennya sama.
R S
R ∪ S
Query :
Tampilkan nid (dari relasi Dosen) Union dari nid (dari relasi
Mengajar) .
Aljabar relasional: π nid (Dosen) ∪ nid (Mengajar)
5. Set-difference ( --- )
Set-difference ( -- ), adalah operasi untuk mendapatkan table
pada suatu relasi, tapi tidak
ada pada relasi yang lainnya. 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.
Query : Tampilkan nid (dari relasi Dosen) Set-difference dari
nid (dari relasi Mengajar).
Aljabar relasional: π nid (Dosen) -- nid (Mengajar)
6. 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)
Query : Salinlah table baru dengan nama DosenNew dari table Dosen, dimana
jenis kelaminnya adalah ‘Pria’.
Aljabar relasional: ρ DosenNew (σ jkelamin=’Pria’) (Dosen))
Untuk operasi rename ini hasil dari perintah tersebut adalah membentuk table
baru dengan nama DosenNew beserta datanya dimana jenis kelaminnya adalah
‘Pria’
7. Set-Intersection (∩)
Set-intersection / Intersection (∩) termasuk kedalam operator tambahan, karena
operator ini dapat diderivikasi dari operator dasar seperti berikut:
A ∩ B = A - ( A – B ), atau A ∩ B = B - ( B – A )
Operasi ini merupakan operasi binary, yang digunakan untuk membentuk
sebuah relasi baru dengan tuple yang berasal dari kedua relasi yang
dihubungkan, misalkan:
R1 R2
R1 ∩ R2
Query : Tampilkan nid (dari relasi Dosen) Set-
intersection dari nid (dari relasi Mengajar).
Aljabar relasional:
π nid (Dosen) ∩ nid (Mengajar)
Hasilnya
8. Theta-join (θ) / Equi-join (⋈)
Theta-join ( ) dan equi-join adalah operasi untuk menggabungkan operasi
selection dan cartesian-product dengan suatu kriteria
Query : Tampilkan seluruh data yang ada pada relasi Matakuliah dan relasi
Mengajar
Aljabar relasional: Matakuliah ⋈ Mengajar.kdmk=Matakuliah.kdmk Mengajar
9. Natural-join (⋈)
Natural-join (⋈) sama seperti operasi equi-join adalah operasi untuk
menggabungkan operasi selection dan Cartesian-Product dengan suatu kriteria
pada kolom yang sama.
Query : Tampilkan seluruh data yang ada pada relasi Matakuliah dan relasi
Mengajar
Aljabar relasional: Matakuliah ⋈ Mengajar.kdmk=Matakuliah.kdmk Mengajar
10. Outer-join ( )
Outer-join adalah operasi untuk menggabungkan operasi selection dan
cartesian-product dengan suatu kriteria pada kolom yang sama.
Query : Tampilkan nid_nama_d (dari relasi Dosen) dan thn_akademik, smt, hari,
jam_ke, waktu (dari relasi Mengajar) dengan outer join, artinya adalah pada
kolom nid, nama_d pada relasi Dosen akan ditampilkan walaupun dosen
tersebut tidak melakukan transaksi mengajar.
Aljabar relasional:
π nid, nama_d (Dosen) π thn_akademik, smt, hari, jam_ke,waktu (Mengajar)
11. Devision (÷)
Devision (÷) adalah operasi yang banyak digunakan dlam query yang mencakup
frase “setiap” atau “untuk semua”, operasi ini juga merupakan pembagian atas
tuple – tuple dari dua relasi.
Query : Tampilkan nid, hari, waktu (dari relasi Mengajar) dan nid (dari relasi Dosen)
dimana dosen yang jenis kelaminnya ‘Pria’ dan lakukan devision pada kedua relasi
tersebut.
Aljabar relasional: π nid,hari,waktu (Mengajar)) ÷ (π nid (σ jkelamin=’Pria’ (Dosen)))
π nid,hari,waktu (Mengajar) π nid (σ gajipokok>1300000 (Dosen)) Hasil akhir adalah:

More Related Content

What's hot

Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunanFajar Istiqomah
 
8 logika predikat
8  logika predikat8  logika predikat
8 logika predikat
Yulinda Nurhafina
 
Graf Pohon
Graf PohonGraf Pohon
Graf Pohon
Septi Ratnasari
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
Siti Khotijah
 
Intermediate code kode antara
Intermediate code   kode antaraIntermediate code   kode antara
Intermediate code kode antara
Gunawan Manalu
 
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & CalculusBasis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
Ratzman III
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
zachrison htg
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automata
ahmad haidaroh
 
Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03
KuliahKita
 
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekAlgoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendek
Laili Wahyunita
 
Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )
Kelinci Coklat
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)
Simon Patabang
 
Metode pencarian heuristik
Metode pencarian heuristikMetode pencarian heuristik
Metode pencarian heuristik
Baguss Chandrass
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
ahmad haidaroh
 
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop OnlineERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
Lucha Kamala Putri
 
Distribusi hipergeometrik
Distribusi hipergeometrikDistribusi hipergeometrik
Distribusi hipergeometrik
Eman Mendrofa
 
Analisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik KompilasiAnalisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasi
ahmad haidaroh
 
Pertemuan 10
Pertemuan 10Pertemuan 10
Pertemuan 10
Muhamad Edi.S
 
proposisi majemuk & Tautologi
 proposisi majemuk & Tautologi proposisi majemuk & Tautologi
proposisi majemuk & Tautologi
Huzairi Zairi
 
Peubah acak diskrit dan kontinu
Peubah acak diskrit dan kontinuPeubah acak diskrit dan kontinu
Peubah acak diskrit dan kontinu
Anderzend Awuy
 

What's hot (20)

Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunan
 
8 logika predikat
8  logika predikat8  logika predikat
8 logika predikat
 
Graf Pohon
Graf PohonGraf Pohon
Graf Pohon
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
 
Intermediate code kode antara
Intermediate code   kode antaraIntermediate code   kode antara
Intermediate code kode antara
 
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & CalculusBasis Data, Ch 4 - Relasonal Aljabar & Calculus
Basis Data, Ch 4 - Relasonal Aljabar & Calculus
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automata
 
Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03
 
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekAlgoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendek
 
Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )Ruang Vektor ( Aljabar Linear Elementer )
Ruang Vektor ( Aljabar Linear Elementer )
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)
 
Metode pencarian heuristik
Metode pencarian heuristikMetode pencarian heuristik
Metode pencarian heuristik
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
 
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop OnlineERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
 
Distribusi hipergeometrik
Distribusi hipergeometrikDistribusi hipergeometrik
Distribusi hipergeometrik
 
Analisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik KompilasiAnalisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasi
 
Pertemuan 10
Pertemuan 10Pertemuan 10
Pertemuan 10
 
proposisi majemuk & Tautologi
 proposisi majemuk & Tautologi proposisi majemuk & Tautologi
proposisi majemuk & Tautologi
 
Peubah acak diskrit dan kontinu
Peubah acak diskrit dan kontinuPeubah acak diskrit dan kontinu
Peubah acak diskrit dan kontinu
 

Similar to Bab 2 Aljabar Relasional

Relational algebra
Relational algebraRelational algebra
Relational algebra
Diki Firmansyah
 
02. relational model dan query languages
02. relational model dan query languages02. relational model dan query languages
02. relational model dan query languages
Fakhrian Fadlia Adiwijaya
 
Basis Data, Ch. 3 - Relational Model
Basis Data, Ch. 3 - Relational ModelBasis Data, Ch. 3 - Relational Model
Basis Data, Ch. 3 - Relational Model
Ratzman III
 
Bab iv sql
Bab iv   sqlBab iv   sql
Bab iv sql
Dogie Junior
 
10. model data relasional
10. model data relasional10. model data relasional
10. model data relasional
Abdur Rasyid
 
Sbd ke3
Sbd ke3Sbd ke3
Sbd ke3
Dani Suryanto
 
PPT Sistem Basis Data [TM3].pdf
PPT Sistem Basis Data [TM3].pdfPPT Sistem Basis Data [TM3].pdf
PPT Sistem Basis Data [TM3].pdf
BayuRandu
 
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
FadhilahMargiPertiwi
 
_03.Relational Algebra and Calculus_ok.pptx
_03.Relational Algebra and Calculus_ok.pptx_03.Relational Algebra and Calculus_ok.pptx
_03.Relational Algebra and Calculus_ok.pptx
BelboisCluster
 
Modul 4
Modul 4Modul 4
Modul 4
Aris Alhalaj
 
Bab 3 - Kalkulus Relasional
Bab 3 -  Kalkulus RelasionalBab 3 -  Kalkulus Relasional
Bab 3 - Kalkulus Relasional
Ratzman III
 
3.-Modul-3-Model-Data-Relasional.pdf
3.-Modul-3-Model-Data-Relasional.pdf3.-Modul-3-Model-Data-Relasional.pdf
3.-Modul-3-Model-Data-Relasional.pdf
LamataSingi1
 
Laporan modul 5 basisdata
Laporan modul 5 basisdataLaporan modul 5 basisdata
Laporan modul 5 basisdata
Istu Purnamasari
 
mengenal fungsi-fungsi diSQL Server
mengenal fungsi-fungsi diSQL Servermengenal fungsi-fungsi diSQL Server
mengenal fungsi-fungsi diSQL Server
syahrul ramadan
 
Model data relasional (3)
Model data relasional (3)Model data relasional (3)
Model data relasional (3)
Arib Herzi
 
Model data relasional (3)
Model data relasional (3)Model data relasional (3)
Model data relasional (3)
Fariszal Nova
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi PengetahuanLangit Papageno
 
APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...
APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...
APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...
Ainul Yaqin
 

Similar to Bab 2 Aljabar Relasional (20)

Relational algebra
Relational algebraRelational algebra
Relational algebra
 
02. relational model dan query languages
02. relational model dan query languages02. relational model dan query languages
02. relational model dan query languages
 
Basis Data, Ch. 3 - Relational Model
Basis Data, Ch. 3 - Relational ModelBasis Data, Ch. 3 - Relational Model
Basis Data, Ch. 3 - Relational Model
 
Bab iv sql
Bab iv   sqlBab iv   sql
Bab iv sql
 
10. model data relasional
10. model data relasional10. model data relasional
10. model data relasional
 
Sbd ke3
Sbd ke3Sbd ke3
Sbd ke3
 
PPT Sistem Basis Data [TM3].pdf
PPT Sistem Basis Data [TM3].pdfPPT Sistem Basis Data [TM3].pdf
PPT Sistem Basis Data [TM3].pdf
 
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
 
_03.Relational Algebra and Calculus_ok.pptx
_03.Relational Algebra and Calculus_ok.pptx_03.Relational Algebra and Calculus_ok.pptx
_03.Relational Algebra and Calculus_ok.pptx
 
Modul 4
Modul 4Modul 4
Modul 4
 
Bab 3 - Kalkulus Relasional
Bab 3 -  Kalkulus RelasionalBab 3 -  Kalkulus Relasional
Bab 3 - Kalkulus Relasional
 
Erd2
Erd2Erd2
Erd2
 
3.-Modul-3-Model-Data-Relasional.pdf
3.-Modul-3-Model-Data-Relasional.pdf3.-Modul-3-Model-Data-Relasional.pdf
3.-Modul-3-Model-Data-Relasional.pdf
 
Laporan modul 5 basisdata
Laporan modul 5 basisdataLaporan modul 5 basisdata
Laporan modul 5 basisdata
 
mengenal fungsi-fungsi diSQL Server
mengenal fungsi-fungsi diSQL Servermengenal fungsi-fungsi diSQL Server
mengenal fungsi-fungsi diSQL Server
 
Model data relasional (3)
Model data relasional (3)Model data relasional (3)
Model data relasional (3)
 
Model data relasional (3)
Model data relasional (3)Model data relasional (3)
Model data relasional (3)
 
pemetaan erd
pemetaan erdpemetaan erd
pemetaan erd
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi Pengetahuan
 
APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...
APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...
APLIKASI WORKFLOW REPOSITORY PADA ENTERPRISE RESOURCE PLANNING PONDOK PESANTR...
 

More from Ratzman III

Tugas Tutorial EKSI4202 Hukum Pajak
Tugas Tutorial EKSI4202 Hukum PajakTugas Tutorial EKSI4202 Hukum Pajak
Tugas Tutorial EKSI4202 Hukum Pajak
Ratzman III
 
Tugas Wajib Tutorial I - EKSI4202 - Hukum Pajak
Tugas Wajib Tutorial I  -  EKSI4202 - Hukum PajakTugas Wajib Tutorial I  -  EKSI4202 - Hukum Pajak
Tugas Wajib Tutorial I - EKSI4202 - Hukum PajakRatzman III
 
Review Artikel Tinjauan Pustaka
Review Artikel Tinjauan PustakaReview Artikel Tinjauan Pustaka
Review Artikel Tinjauan Pustaka
Ratzman III
 
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya IlmiahMICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
Ratzman III
 
Format laporan Tutor Universitas Terbuka 2014
Format laporan Tutor Universitas Terbuka 2014Format laporan Tutor Universitas Terbuka 2014
Format laporan Tutor Universitas Terbuka 2014
Ratzman III
 
Arduino Ch3 : Tilt Sensing Servo Motor Controller
Arduino Ch3 : Tilt Sensing Servo Motor Controller Arduino Ch3 : Tilt Sensing Servo Motor Controller
Arduino Ch3 : Tilt Sensing Servo Motor Controller
Ratzman III
 
Arduino - Ch 2: Sunrise-Sunset Light Switch
Arduino - Ch 2: Sunrise-Sunset Light SwitchArduino - Ch 2: Sunrise-Sunset Light Switch
Arduino - Ch 2: Sunrise-Sunset Light Switch
Ratzman III
 
Arduino - CH 1: The Trick Switch
Arduino - CH 1: The Trick SwitchArduino - CH 1: The Trick Switch
Arduino - CH 1: The Trick Switch
Ratzman III
 
Bab 1 RDBMS Review
Bab 1   RDBMS ReviewBab 1   RDBMS Review
Bab 1 RDBMS Review
Ratzman III
 
Kisi kisi basis data uts
Kisi kisi basis data utsKisi kisi basis data uts
Kisi kisi basis data utsRatzman III
 
Kisi kisi basis data uts
Kisi kisi basis data utsKisi kisi basis data uts
Kisi kisi basis data uts
Ratzman III
 
Modul my sql tutorial part 6
Modul my sql tutorial part 6Modul my sql tutorial part 6
Modul my sql tutorial part 6Ratzman III
 
Tugas i
Tugas iTugas i
Tugas i
Ratzman III
 
Modul my sql tutorial part 5
Modul my sql tutorial part 5Modul my sql tutorial part 5
Modul my sql tutorial part 5Ratzman III
 
Pengabdian 2
Pengabdian 2Pengabdian 2
Pengabdian 2
Ratzman III
 
Format Pengabdian Masyarakat
Format Pengabdian MasyarakatFormat Pengabdian Masyarakat
Format Pengabdian Masyarakat
Ratzman III
 

More from Ratzman III (20)

Tugas Tutorial EKSI4202 Hukum Pajak
Tugas Tutorial EKSI4202 Hukum PajakTugas Tutorial EKSI4202 Hukum Pajak
Tugas Tutorial EKSI4202 Hukum Pajak
 
Tugas Wajib Tutorial I - EKSI4202 - Hukum Pajak
Tugas Wajib Tutorial I  -  EKSI4202 - Hukum PajakTugas Wajib Tutorial I  -  EKSI4202 - Hukum Pajak
Tugas Wajib Tutorial I - EKSI4202 - Hukum Pajak
 
Review Artikel Tinjauan Pustaka
Review Artikel Tinjauan PustakaReview Artikel Tinjauan Pustaka
Review Artikel Tinjauan Pustaka
 
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya IlmiahMICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
 
Format laporan Tutor Universitas Terbuka 2014
Format laporan Tutor Universitas Terbuka 2014Format laporan Tutor Universitas Terbuka 2014
Format laporan Tutor Universitas Terbuka 2014
 
Arduino Ch3 : Tilt Sensing Servo Motor Controller
Arduino Ch3 : Tilt Sensing Servo Motor Controller Arduino Ch3 : Tilt Sensing Servo Motor Controller
Arduino Ch3 : Tilt Sensing Servo Motor Controller
 
Arduino - Ch 2: Sunrise-Sunset Light Switch
Arduino - Ch 2: Sunrise-Sunset Light SwitchArduino - Ch 2: Sunrise-Sunset Light Switch
Arduino - Ch 2: Sunrise-Sunset Light Switch
 
Arduino - CH 1: The Trick Switch
Arduino - CH 1: The Trick SwitchArduino - CH 1: The Trick Switch
Arduino - CH 1: The Trick Switch
 
Bab 1 RDBMS Review
Bab 1   RDBMS ReviewBab 1   RDBMS Review
Bab 1 RDBMS Review
 
Kisi kisi basis data uts
Kisi kisi basis data utsKisi kisi basis data uts
Kisi kisi basis data uts
 
Kisi kisi basis data uts
Kisi kisi basis data utsKisi kisi basis data uts
Kisi kisi basis data uts
 
Modul my sql tutorial part 6
Modul my sql tutorial part 6Modul my sql tutorial part 6
Modul my sql tutorial part 6
 
Nilai lab 01pt3
Nilai lab 01pt3Nilai lab 01pt3
Nilai lab 01pt3
 
Format sap
Format sapFormat sap
Format sap
 
Tugas i
Tugas iTugas i
Tugas i
 
Modul my sql tutorial part 5
Modul my sql tutorial part 5Modul my sql tutorial part 5
Modul my sql tutorial part 5
 
1088
10881088
1088
 
1152
11521152
1152
 
Pengabdian 2
Pengabdian 2Pengabdian 2
Pengabdian 2
 
Format Pengabdian Masyarakat
Format Pengabdian MasyarakatFormat Pengabdian Masyarakat
Format Pengabdian Masyarakat
 

Recently uploaded

Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?
Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?
Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?
SABDA
 
Modul Ajar Kimia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Kimia Kelas 10 Fase E Kurikulum MerdekaModul Ajar Kimia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Kimia Kelas 10 Fase E Kurikulum Merdeka
Fathan Emran
 
Panduan Pemilihan Mapel Pilihan SMK.pptx
Panduan Pemilihan Mapel Pilihan SMK.pptxPanduan Pemilihan Mapel Pilihan SMK.pptx
Panduan Pemilihan Mapel Pilihan SMK.pptx
tab2008
 
Perencanaan Berbasis Data Satuan Pendidikan Jenjang SMP
Perencanaan Berbasis Data Satuan Pendidikan Jenjang SMPPerencanaan Berbasis Data Satuan Pendidikan Jenjang SMP
Perencanaan Berbasis Data Satuan Pendidikan Jenjang SMP
TriSutrisno48
 
Mengenali Usia anak dan Kekerasan pada Anak
Mengenali Usia anak dan Kekerasan pada AnakMengenali Usia anak dan Kekerasan pada Anak
Mengenali Usia anak dan Kekerasan pada Anak
Yayasan Pusat Kajian dan Perlindungan Anak
 
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Fathan Emran
 
Selamat "Hari Raya_Idul Adha 1445H / 2024H".
Selamat "Hari Raya_Idul Adha 1445H / 2024H".Selamat "Hari Raya_Idul Adha 1445H / 2024H".
Selamat "Hari Raya_Idul Adha 1445H / 2024H".
Kanaidi ken
 
Projek Penguatan Profil Pelajar Pancasila SD.pdf.pdf
Projek Penguatan Profil Pelajar Pancasila SD.pdf.pdfProjek Penguatan Profil Pelajar Pancasila SD.pdf.pdf
Projek Penguatan Profil Pelajar Pancasila SD.pdf.pdf
anikdwihariyanti
 
Proyek Tema Dimensi P5 Pelajar Pancasila
Proyek Tema Dimensi P5 Pelajar PancasilaProyek Tema Dimensi P5 Pelajar Pancasila
Proyek Tema Dimensi P5 Pelajar Pancasila
ArulArya1
 
laporan komunitas belajar sekolah dasar negeri botoputih
laporan komunitas belajar sekolah dasar negeri botoputihlaporan komunitas belajar sekolah dasar negeri botoputih
laporan komunitas belajar sekolah dasar negeri botoputih
SDNBotoputih
 
Menyambut Masyarakat 4.0 dan Indonesia Emas 2045
Menyambut Masyarakat 4.0 dan Indonesia Emas 2045Menyambut Masyarakat 4.0 dan Indonesia Emas 2045
Menyambut Masyarakat 4.0 dan Indonesia Emas 2045
RizkiArdhan
 
JURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdf
JURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdfJURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdf
JURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdf
HERIHERI52
 
Kalender Pendidikan tahun pelajaran 2023/2024 Kabupaten Temanggung .pdf
Kalender Pendidikan tahun pelajaran 2023/2024  Kabupaten Temanggung .pdfKalender Pendidikan tahun pelajaran 2023/2024  Kabupaten Temanggung .pdf
Kalender Pendidikan tahun pelajaran 2023/2024 Kabupaten Temanggung .pdf
SDNBotoputih
 
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdf
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdfRANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdf
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdf
OswaldusDiwaDoka
 
PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1
PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1
PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1
Arumdwikinasih
 
425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx
425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx
425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx
MuhamadsyakirbinIsma
 
Rangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdf
Rangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdfRangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdf
Rangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdf
mad ros
 
Modul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum MerdekaModul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum Merdeka
Fathan Emran
 
Tugas Refleksi Dwi Mingguan Modul 1.4.pdf
Tugas Refleksi Dwi Mingguan Modul 1.4.pdfTugas Refleksi Dwi Mingguan Modul 1.4.pdf
Tugas Refleksi Dwi Mingguan Modul 1.4.pdf
Thahir9
 
PERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdf
PERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdfPERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdf
PERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdf
MunirLuvNaAin
 

Recently uploaded (20)

Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?
Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?
Pelatihan AI GKA abdi Sabda - Bagaimana memakai AI?
 
Modul Ajar Kimia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Kimia Kelas 10 Fase E Kurikulum MerdekaModul Ajar Kimia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Kimia Kelas 10 Fase E Kurikulum Merdeka
 
Panduan Pemilihan Mapel Pilihan SMK.pptx
Panduan Pemilihan Mapel Pilihan SMK.pptxPanduan Pemilihan Mapel Pilihan SMK.pptx
Panduan Pemilihan Mapel Pilihan SMK.pptx
 
Perencanaan Berbasis Data Satuan Pendidikan Jenjang SMP
Perencanaan Berbasis Data Satuan Pendidikan Jenjang SMPPerencanaan Berbasis Data Satuan Pendidikan Jenjang SMP
Perencanaan Berbasis Data Satuan Pendidikan Jenjang SMP
 
Mengenali Usia anak dan Kekerasan pada Anak
Mengenali Usia anak dan Kekerasan pada AnakMengenali Usia anak dan Kekerasan pada Anak
Mengenali Usia anak dan Kekerasan pada Anak
 
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
 
Selamat "Hari Raya_Idul Adha 1445H / 2024H".
Selamat "Hari Raya_Idul Adha 1445H / 2024H".Selamat "Hari Raya_Idul Adha 1445H / 2024H".
Selamat "Hari Raya_Idul Adha 1445H / 2024H".
 
Projek Penguatan Profil Pelajar Pancasila SD.pdf.pdf
Projek Penguatan Profil Pelajar Pancasila SD.pdf.pdfProjek Penguatan Profil Pelajar Pancasila SD.pdf.pdf
Projek Penguatan Profil Pelajar Pancasila SD.pdf.pdf
 
Proyek Tema Dimensi P5 Pelajar Pancasila
Proyek Tema Dimensi P5 Pelajar PancasilaProyek Tema Dimensi P5 Pelajar Pancasila
Proyek Tema Dimensi P5 Pelajar Pancasila
 
laporan komunitas belajar sekolah dasar negeri botoputih
laporan komunitas belajar sekolah dasar negeri botoputihlaporan komunitas belajar sekolah dasar negeri botoputih
laporan komunitas belajar sekolah dasar negeri botoputih
 
Menyambut Masyarakat 4.0 dan Indonesia Emas 2045
Menyambut Masyarakat 4.0 dan Indonesia Emas 2045Menyambut Masyarakat 4.0 dan Indonesia Emas 2045
Menyambut Masyarakat 4.0 dan Indonesia Emas 2045
 
JURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdf
JURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdfJURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdf
JURNAL REFLEKSI DWI MINGGUAN MODUL 1.4 BUDAYA POSITIF.pdf
 
Kalender Pendidikan tahun pelajaran 2023/2024 Kabupaten Temanggung .pdf
Kalender Pendidikan tahun pelajaran 2023/2024  Kabupaten Temanggung .pdfKalender Pendidikan tahun pelajaran 2023/2024  Kabupaten Temanggung .pdf
Kalender Pendidikan tahun pelajaran 2023/2024 Kabupaten Temanggung .pdf
 
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdf
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdfRANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdf
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pdf.pdf
 
PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1
PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1
PPT RENCANA AKSI 2 modul ajar matematika berdiferensiasi kelas 1
 
425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx
425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx
425764250-Koleksi-Soalan-Sains-Tingkatan-1-KSSM.docx
 
Rangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdf
Rangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdfRangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdf
Rangkuman Kehadiran Guru di Kelas- www.kherysuryawan.id.pdf
 
Modul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum MerdekaModul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum Merdeka
Modul Ajar Bahasa Indonesia Kelas 10 Fase E Kurikulum Merdeka
 
Tugas Refleksi Dwi Mingguan Modul 1.4.pdf
Tugas Refleksi Dwi Mingguan Modul 1.4.pdfTugas Refleksi Dwi Mingguan Modul 1.4.pdf
Tugas Refleksi Dwi Mingguan Modul 1.4.pdf
 
PERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdf
PERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdfPERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdf
PERSENTASI PENINGKATAN KUALITAS PRAKTIK PEMBELAJARAN.pdf
 

Bab 2 Aljabar Relasional

  • 1. DERIST TOURIANO, ST., M.KOM DATABASE LANJUTAN
  • 2. Chapter 2 ALJABAR DAN KALKULUS RELASIONAL Bahasa query formal basis data relasional adalah bahasa untuk meminta informasi dari basis data. Sebelum basis data relasional, query terhadap basis data merupakan tugas yang sangat sukar. Pemogram harus berususan dengan skema fisik internal dari basis data. Bahasa query relasional misalkan SQL (sructured query language) berbeda dengan bahasa pemrograman konvensional. Di SQL, kita menspesifikasikan properti – properti informasi yang hendak diambil tapi tidak mencantumkan rincian algoritma pengambilan. SQL adalah deklaratif, yaitu pada query dideklarasikan informasi yang merupakan jawaban yang dikehendaki bukan cara komputasi.
  • 3. Query kompleks yag diperlukan pada kebanyakan aplikasi nyata memerlukan pengetahuan mendalam mengenai bahasa da semantiknya. Bahasa query relasional formal merupakan bahasa antara yang digunakan basis data, yaitu SQL dikonversi menjadi bahasa relasional formal sehingga dapa diterapkan sekumpulan informasi untuk memperoleh query paling efisien. Terdapat dua jenis bahasa query relasional formal yang utama, yaitu: Aljabar dan Kalkulus Relasional. Aljabar Relasional Relational Algebra (aljabar relasional) merupakan kumpulan operasi terhadap relasi dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi yang baru dan termasuk kategori prosedural dan juga menyediakan seperangkat operator untuk memanipulasi data.
  • 4. Semua operasi tersebut menghasilkan relasi baru. Bahasa disebut aljabar relasional karena bahasa berdasar sejumlah operator yang beroperasi pada relasi – relasi (tabel – tabel). Masing –masing operator beroperasi pada satu relasi atau lebih atau menghasilkan relasi – relasi lain sebagai hasil. Query adalah sekedar ekspresi yang melibatkan operator – operator itu. Hasil ekspresi adalah relasi yaitu jawaban terhadap query. 5 Operasi Dasar Dalam Aljabar Relasional Operasi Turunan Dari Operasi Dasar 1. Selection ( σ ) 2. Projection ( π ) 3. Cartesian – product ( X/Cross Product ) 4. Union ( ∪ ) 5. Set – difference ( - ) 6. Rename ( ρ ) 1. Set intersection ( ∩ ) 2. Theta join ( θ ) 3. Natural join (⋈) 4. Outer-join (⟗ ) 5. Division ( ÷ )
  • 5. SQL adalah bahasa yang deklaratif yang berarti tidak menspesifikasikan algoritma yang digunakan untuk pengolahan query. Ekspresi relasional dapat dipandang sebagai spesifikasi algoritma (meskipun dalam level lebih tinggi dibanding algoritma untuk bahasa pemrograman konvensional). Pemrogram menggunakan query SQL, DBMS menggunakan aljabar relasional sebagai bahasa antara dalam spesifikasi algoritma query. Langkah – langkah dalam DBMS untuk pengolahan query adalah: 1. DBMS melakukan parsing terhadap string dari query SQL dan menerjemahkannya menjadi ekspresi aljabar relasional yang dapat menuntun kedalam algoritma sederhana yang tidak efisien. 2. Setelah itu, bagian query optimizer mengkonversi ekspresi aljabar relasional ini menjadi ekspresi lain yang ekvivalen nemun lebih efisien untuk dieksekusi. 3. Berdasarkan ekpresi aljabar relasional yang telah dioptimasi, query optimizer mempesiapkan rencana eksekusi query (query execution plan) yang kemudian ditransformasikan menjadi kode yang dapat dieksekusi pembangkit kode di DBMS.
  • 6. 4. Karena ekspresi aljabar mempunyai semantik matematika yang presisi maka sistem dapat memferifikasi ekvivalensi ekspresi yang dioptimasi yang dihasilkan dari manipulasi ekpresi asal. Semantiks ini juga memungkinkan pembandingan rencana – rencana evaluasi query yang berbeda. Operasi Aljabar Relasional Untuk mengimplementasikan kedalam operasi aljabar relasional, berikut ini diberikan relasi –relasi dari database Penjadwalan_mengajar_dosen pada STIKOM Jambi. Relasi – relasi tersebut meliputi: Dosen Mata Kuliah Jurusan Mengajar nid nama_dosen tempat_lhr tgl_lahir, jkelamin alamat kota kodepos gpokok kdmk, nama_mk, sks, semester kode_jur, nama_jur, jenjang, nama_kajur nid thn_akademik smt hari jam_ke kdmk, waktu, kelas, kode_jur
  • 10. Semua operasi tersebut menghasilkan relasi baru. Bahasa disebut aljabar relasional karena bahasa berdasar sejumlah operator yang beroperasi pada relasi – relasi (tabel – tabel). Masing –masing operator beroperasi pada satu relasi atau lebih atau menghasilkan relasi – relasi lain sebagai hasil. Query adalah sekedar ekspresi yang melibatkan operator – operator itu. Hasil ekspresi adalah relasi yaitu jawaban terhadap query. 1. Operasi Selection ( σ ) Selection / Select (σ ), adalah operasi untuk menyeleksi tupel – tupel yang memenuhi suatu predikat, kita dapat menggunakan operator perbandingan (<,>,>=,<=,=,#) pada predikat. Beberapa predikat dapat dikombinasikan menjadi predikat majemuk menggunakan penghubung AND ( ∧ ) dan OR ( ∨ ). Contoh operasi Select: Query : Tampilkan daftar dosen yang tempat lahirnya di ‘Bekasi’. Aljabar relasional: σtempat_lhr=’Bekasi’ (Dosen)
  • 11. 2. Operasi Projection ( π ) Projection / Project ( π ), adalah operasi untuk memperoleh kolom – kolom tertentu. Operasi project adalah operasi unary yang mengirim relasi argumen dengan kolom – kolom tertentu. Karena relasi adalah himpunan, maka baris – baris duplikasi dihilangkan. Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut : π colum1,…,column ( tabel) Contoh operasi Project: Query : Tampilkan nid,nama_dosen,alamat,kota dari relasi Dosen Aljabar relasional: π nid,nama_d,alamat,kota (Dosen)
  • 12.
  • 13. 3. Operasi Cartesian-Product ( X ) Cartesian-product ( X ), adalah operasi untuk menghasilkan table hasil perkalian kartesian. Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut : R X S = {(x,y) | x ϵ R dan y ϵ S} 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.
  • 14. Contoh operasi Cartesian-product: Query : Tampilkan nid, nama_dosen (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’. 2. Aljabar relasional: π nid, nama_dosen, nama_mk, thn_akademik, smt, hari, jam_ke, waktu, kelas (σ smt=1 ∧ Dosen.nid = Mengajar.nid ∧ Mengajar.kdmk = Matakuliah.kdmk (Dosen x Matakuliah x Mengajar))
  • 15. 4. Operasi Union (∪), Union adalah operasi untuk menghasilkan gabungan table degan syarat kedua table memiliki atribut yang sama, yaitu domain atribut ke-i masing – masing table harus sama. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut : R ∪ S = {x | x ϵ R atau X ϵ S} Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang sama sehingga jumlah komponennya sama. R S R ∪ S
  • 16. Query : Tampilkan nid (dari relasi Dosen) Union dari nid (dari relasi Mengajar) . Aljabar relasional: π nid (Dosen) ∪ nid (Mengajar) 5. Set-difference ( --- ) Set-difference ( -- ), adalah operasi untuk mendapatkan table pada suatu relasi, tapi tidak ada pada relasi yang lainnya. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut : R – S = { x | x ϵ R dan X ϵ S}
  • 17. 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. Query : Tampilkan nid (dari relasi Dosen) Set-difference dari nid (dari relasi Mengajar). Aljabar relasional: π nid (Dosen) -- nid (Mengajar) 6. 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)
  • 18. Query : Salinlah table baru dengan nama DosenNew dari table Dosen, dimana jenis kelaminnya adalah ‘Pria’. Aljabar relasional: ρ DosenNew (σ jkelamin=’Pria’) (Dosen)) Untuk operasi rename ini hasil dari perintah tersebut adalah membentuk table baru dengan nama DosenNew beserta datanya dimana jenis kelaminnya adalah ‘Pria’
  • 19. 7. Set-Intersection (∩) Set-intersection / Intersection (∩) termasuk kedalam operator tambahan, karena operator ini dapat diderivikasi dari operator dasar seperti berikut: A ∩ B = A - ( A – B ), atau A ∩ B = B - ( B – A ) Operasi ini merupakan operasi binary, yang digunakan untuk membentuk sebuah relasi baru dengan tuple yang berasal dari kedua relasi yang dihubungkan, misalkan: R1 R2 R1 ∩ R2 Query : Tampilkan nid (dari relasi Dosen) Set- intersection dari nid (dari relasi Mengajar). Aljabar relasional: π nid (Dosen) ∩ nid (Mengajar) Hasilnya
  • 20. 8. Theta-join (θ) / Equi-join (⋈) Theta-join ( ) dan equi-join adalah operasi untuk menggabungkan operasi selection dan cartesian-product dengan suatu kriteria Query : Tampilkan seluruh data yang ada pada relasi Matakuliah dan relasi Mengajar Aljabar relasional: Matakuliah ⋈ Mengajar.kdmk=Matakuliah.kdmk Mengajar
  • 21. 9. Natural-join (⋈) Natural-join (⋈) sama seperti operasi equi-join adalah operasi untuk menggabungkan operasi selection dan Cartesian-Product dengan suatu kriteria pada kolom yang sama. Query : Tampilkan seluruh data yang ada pada relasi Matakuliah dan relasi Mengajar Aljabar relasional: Matakuliah ⋈ Mengajar.kdmk=Matakuliah.kdmk Mengajar
  • 22. 10. Outer-join ( ) Outer-join adalah operasi untuk menggabungkan operasi selection dan cartesian-product dengan suatu kriteria pada kolom yang sama. Query : Tampilkan nid_nama_d (dari relasi Dosen) dan thn_akademik, smt, hari, jam_ke, waktu (dari relasi Mengajar) dengan outer join, artinya adalah pada kolom nid, nama_d pada relasi Dosen akan ditampilkan walaupun dosen tersebut tidak melakukan transaksi mengajar. Aljabar relasional: π nid, nama_d (Dosen) π thn_akademik, smt, hari, jam_ke,waktu (Mengajar)
  • 23.
  • 24. 11. Devision (÷) Devision (÷) adalah operasi yang banyak digunakan dlam query yang mencakup frase “setiap” atau “untuk semua”, operasi ini juga merupakan pembagian atas tuple – tuple dari dua relasi. Query : Tampilkan nid, hari, waktu (dari relasi Mengajar) dan nid (dari relasi Dosen) dimana dosen yang jenis kelaminnya ‘Pria’ dan lakukan devision pada kedua relasi tersebut. Aljabar relasional: π nid,hari,waktu (Mengajar)) ÷ (π nid (σ jkelamin=’Pria’ (Dosen))) π nid,hari,waktu (Mengajar) π nid (σ gajipokok>1300000 (Dosen)) Hasil akhir adalah: