BAB 4 ALJABAR RELASIONAL

dokumen-dokumen yang mirip
Aljabar Relasional -2

PEMROSESAN QUERY. Alif Finandhita, S.Kom

PEMROSESAN QUERY. Gentisya Tri Mardiani, S.Kom

PEMROSESAN QUERY. Alif Finandhita, S.Kom, M.T

Teknik Informatika, Fakultas Teknik, Universitas Brawijaya,

BASIS DATA ALJABAR RELASIONAL (RELATIONAL ALGEBRA)

Model dan Aljabar Relasional. Rima Dias Ramadhani, S.Kom., M.Kom Wa:

Basis Data. Bahasa Kueri. Basis Data.

Model Relasional. Basis Data. Pengertian

Pertemuan 6 BAHASA QUERY FORMAL

Aljabar Relasional (Relational Algebra) Teknik Informatika Basis Data (MMT-042)

BAB 1 PENDAHULUAN. penting dan digunakan di hampir setiap area dari keseluruhan cabang ilmu

PERTEMUAN 11 SQL(lanjutan): Queries, Constraints & Triggers. (Chap. 5 Ramakrishnan)

BAHASA QUERY FORMAL BAHASA QUERY FORMAL ALJABAR RELATIONAL

BAB I PENDAHULUAN. C. Tujuan Penulisan Tujuan penulisan makalah ini adalah:

Aljabar Relasional. Lecturer: Mahendra Data, S.Kom

BAB 9 ALJABAR RELASIONAL DAN KALKULUS RELASIONAL

ESTIMASI QUERY. Sistem Basis Data. Gentisya Tri Mardiani, M.Kom

ALJABAR RELASIONAL. Memperoleh tupel tupel dari suatu relasi yang memenuhi predikat tertentu. Tupel tupel hasil SELECT

BASIS DATA I/2009-GENAP ALJABAR RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2009-GENAP 1

Kontrak Kuliah. Aljabar Relasi. Edi Sugiarto, S.Kom, M.Kom

Modul 3 : Query Penggabungan Tabel

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

BAB 2 LANDASAN TEORI Pengertian DBMS (Database Management System)

OPTIMASI QUERY. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

OPTIMASI QUERY. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

ALJABAR RELASIONAL BA S I S DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

LATAR BELAKANG IBM San Jose Research Laboratory.

Adri Priadana ilkomadri.com. Relasi

Pertemuan 6 BAHASA QUERY FORMAL

Modul Praktikum Basis Data 4 Relasi Table

Model Relasional Basis Data

BAB II LANDASAN TEORI


SQL Data Definition Language (DDL)

MODEL DATA RELASIONAL

2. Matrix, Relation and Function. Discrete Mathematics 1

6/26/2011. Database Terdistribusi. Database Terdesentralisasi

SQL (Structure Query Language) Gentisya Tri Mardiani, S.Kom

OPTIMASI QUERY PADA DATABASE UNTUK 2-WAY SMS DIPENDA PROVINSI SULAWESI UTARA

BAHASA QUERI FORMAL. Prosedur - Aljabar Relasional Perangkat Lunak : MACAIMS. Tanpa Prosedur - Kalk.Relasional PL. : DATALOG Domain PL : QBE

Pertemuan 3 dan 4 : MODEL DATA RELASIONAL

BAHASA QUERI FORMAL. Prosedur - Aljabar Relasional Perangkat Lunak : MACAIMS PL: SQL. Bahasa Queri Formal. Tupel PL. : QUEL

SISTEM BASIS DATA II S A N T I W I D I A N T I

BAB I PENDAHULUAN : SISTEM BASIS DATA

MENAMPILKAN DATA DARI BANYAK TABEL

PERTEMUAN 1 PENGENALAN DBMS

BAB II LANDASAN TEORI. berkelanjutan tentang kegiatan/program sehingga dapat dilakukan tindakan

Optimasi Query. by: Ahmad Syauqi Ahsan

BAB 2 TINJAUAN PUSTAKA DAN DASAR TEORI

MODUL 3 JOIN TABLE. Gambar Model Relasi Basis Data db_mutiara SMK NEGERI 1 CIMAHI REKAYASA PERANGKAT LUNAK

Abstrak BAB I PENDAHULUAN

B a s i s D a t a - 1 C H A P T E R. SQL - Basic. Copyright 2005 PENS-ITS

Relasi Adalah hubungan antara elemen himpunan dengan elemen himpunan yang lain. Cara paling mudah untuk menyatakan hubungan antara elemen 2 himpunan

SISTEM BASIS DATA. Oleh : Devie Rosa Anamisa

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Mata Kuliah : Matematika Diskrit Program Studi : Teknik Informatika Minggu ke : 2

ALJABAR RELASIONAL JOIN (Pert. 11)

adalah : Q.1) Suatu susunan/kumpulan data operasional lengkap dari suatu organisasi/perusahaan

select, project dan rename unary, karena operasi-operasi Aljabar Relasional union, set difference dan

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

1. Buat planing view sesuai kebutuhan topik anda (jelaskan dengan detail masing-masing view yang anda buat)

ALJABAR RELASIONAL (RELATIONAL ALGEBRA)

RANGKAIAN KOMBINASIONAL

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

BAB 3 MODEL RELASIONAL

Pengertian Query. Query adalah perintah-perintah untuk mengakses data pada sistem basis data

B a s i s D a t a - 1 C H A P T E R. SQL - Basic. Copyright 2005 PENS-ITS

MODUL 7 STRUCTURED QUERY LANGUAGE

SEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.

B. PETUNJUK. 2. Join. Praktikum Basis Data 2017 TE UM

BASIS DATA (BS203) RELASI ALJABAR. fb: NDoro Edi. Page 1

BAB III LANDASAN TEORI. 3.1 Pengertian Pengabdian kepada Masyarakat. kepada masyarakat adalah kegiatan yang mencakup upaya-upaya peningkatan

MODUL 3. View PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

BAB 1 I PENDAHULUAN. terbarukan untuk mengelola dan mengolah data tersebut. Perkembangan database

BAB III LANDASAN TEORI. waktu berdasarkan rencana pengaturan urutan kerja, daftar atau tabel kegiatan

PENDAHULUAN. Latar Belakang

BAB III LANDASAN TEORI. keinginan pemebeli, guna mendapatkan penjualan yang menghasilkan laba

BAB II LANDASAN TEORI

dalam aljabar relasi kita menggunakan operasi-operasi dasar yang digunakan dalam memanipulasi database, berikut beberapa operasi dasarnya

PERANCANGAN SISTEM DATABASE

BAB 2 LANDASAN TEORI. pengolahan data, pengolahan gambar, pengolahan angka, dan lainnya.

IMPLEMENTASI INVERTED INDEX DENGAN SISTEM MANAJEMEN BASISDATA UNTUK MENDUKUNG MODEL PEMEROLEHAN BOOLEAN

SEMANTIK. Int vector[10];

SATUAN ACARA PERKULIAHAN MATA KULIAH SISTEM BASIS DATA 1 (MI) KODE / SKS KK / 2 SKS

MODUL 7. Advanced Query : Menampilkan Data Dari Banyak Tabel PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

Sistem Basis Data; Tutorial Konseptual Oleh : Yakub

BAB III LANDASAN TEORI. adalah sebagai berikut: Sistem adalah suatu jaringan kerja dari prosedur-prosedur

@Tessy Badriyah, SKom. MT. PERTEMUAN 12 VIEW

BAB III LANDASAN TEORI

DESAIN DATABASE. Pertemuan 06 3 SKS

[Data Warehouse] [6/C2 & 6/D2]

Basis Data 1. Dasar SQL Query. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

SQL Server merupakan program yang dirancang khusus untuk berkomunikasi dengan database relasional guna mendukung aplikasi dengan arsitektur

BAB III LANDASAN TEORI. Penerimaan siswa baru merupakan gerbang awal yang harus dilalui

Satuan Acara Perkuliahan

MODEL DATA RELASIONAL

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB III METODOLOGI DAN RANCANGAN PENELITIAN

B a s i s D a t a. Tatap MUka. SQL Query & Agregate Function. Arif Basofi PENS

Transkripsi:

BAB 4 ALJABAR RELASIONAL Bahasa Query Relasional (Relational Query Language) Bahasa Query : memungkinkan manipulasi dan pemanggilan data dari suatu basis data. Model Relasional mendukung kesederhanaan, dengan kemampuannya untuk melakukan bahasa Query. o Dasar formal yang kuat berdasarkan logika o Bisa dioptimasi Bahasa Query tidak sama dengan bahasa pemrograman o Bahasa Query tidak dimaksudkan untuk digunakan pada proses kalkulasi yang kompleks. o Bahasa Query bisa dilakukan dengan mudah, mempunyai akses yang efisien terhadap himpunan data yang besar. Relasi Formal dari Bahasa Query Terdapat dua macam bentuk bahasa Query : o Aljabar Relasional : lebih bersifat operasional, sangat berguna untuk merepresentasikan eksekusi perencanaan. o Kalkulus Relasional : Memungkinkan user menggambarkan apa yang mereka inginkan, tidak pada bagaimana cara melakukan komputasi terhadap apa yang mereka inginkan tersebut. (tidak bersifat operasional, tapi bersifat deklaratif). Memahami Aljabar dan Kalkulus Relasional adalah kunci dalam memahami SQL (Structured Query Language). Pendahuluan Query diaplikasikan ke instance relasi, dan hasil dari query itu sendiri adalah instance relasi. o Skema dari input relasi untuk suatu query bersifat pasti. o Skema untuk hasil dari query yang diberikan juga bersifat pasti. Ditentukan oleh definisi konstruksi bahasa query yang diberikan. Contoh Instance Berikut ini adalah contoh relasi Sailors dan Reserves.

Digunakan notasi dengan nama field pada hasil query yang diturunkan dari nama fields dalam relasi input query. Aljabar Relasional Operasi dasar : o Selection : Memilih sub himpunan baris dari suatu relasi o Projection : Menghapus kolom yang tidak dikehendaki dari relasi o Cross-product : Memungkinkan kita untuk mengkombinasikan dua relasi o Set-difference : Mendapatkan tupel yang terdapat dalam relasi satu, tapi tidak terdapat dalam relasi dua. o Union : Mendapatkan tupel yang terdapat dalam relasi satu dan relasi dua. Operasi tambahan : Intersection, join, division, renaming.

Projection Menghapus atribut yang tidak dikehendaki dari relasi Misal terdapat relasi S1 berikut : Jika diberikan query : Maka table relasi yang dihasilkan dari query diatas adalah : Jika pada relasi S2, diberikan query : Maka table relasi yang dihasilkan dari query diatas adalah : Dari hasil tersebut, dapat dilihat bahwa operasi projection, dapat mengeleminasi duplikat (field yang bernilai sama). Selection Memilih kolom pada relasi, sesuai dengan kondisi yang sudah ditentukan. Untuk contoh relasi S2 seperti pada table sebelumnya, jika diberikan query : maka table relasi yang dihasilkan :

Dan jika diberikan query berikut untuk relasi S2 : maka table relasi yang dihasilkan : Union, Intersection, Set-Difference Semua operasi ini membutuhkan dua relasi, syarat yang harus dipenuhi adalah : o Mempunyai jumlah field yang sama o Field yang berkorespondensi memiliki tipe yang sama. Untuk dua table relasi S1 dan S2 berikut : berikut ini adalah contoh dari ketiga operasi diatas : Union :

Intersection : Set-Difference : Cross-Product Contoh dipakai dua relasi berikut untuk operator cross-product maka kolom S1 dipasangkan dengan tiap kolom R1.

Skema hasil memiliki satu field per field dari S1 dan R1. o Akan terjadi konflik jika kedua relasi memiliki nama field yang sama seperti pada contoh dibawah ini. o Maka perlu dipakai operator renaming pada query berikut : Join Condition Join / Theta Join : Jadi untuk table cross product S1 x R1 sebelumnya, jika diberikan query berikut : maka table relasi yang dihasilkan : Skema hasil mirip dengan cross-product, hanya diberi kondisi tertentu Lebih sedikit tupel yang dihasilkan, dibandingkan dengan menggunakan operator cross-product, karena komputasinya lebih efisien Seringkali disebut dengan operator theta-join. Equi-Join : Kasus khusus dari condition join dimana kondisi c hanya berisi kesamaan (nilai yang sama dari kedua relasi). Contoh query berikut : Tabel relasi yang dihasilkan :

Skema hasil hampir sama dengan cross-product, tapi hanya berisi satu copy field yang mempunyai kesamaan dari field yang sudah ditentukan. Natural join : Equi-join pada semua fields. Division Tidak mendukung operator primitif, tapi sangat berguna untuk mengekspresikan query seperti ini : Find sailors who have reserved all boats. Misal A memiliki 2 fields yaitu x dan y; sedangkan B hanya memiliki 1 field yaitu y : - Misal A/B berisi semua tupel x (sailors) dimana untuk setiap tupel y (boat) dalam B, terdapat tupel xy dalam A. Pada umumnya, x dan y dapat menjadi anggota fields; y adalah daftar fields dalam B, dan x U y adalah daftar fields dari A. Contoh-contoh operator Division A/B Menyatakan A/B dengan menggunakan Operator Dasar

Cari nama sailor yang mempunyai reserved boar #103 Solusi 1 : Solusi 2 : Solusi 3 : Cari nama Sailor yang mempunyai reserved a red boat Informasi tentang color hanya ada dalam relasi Boats; sehingga diperlukan extra join : Solusi yang lebih efisien : Cari nama Sailor yang memiliki reserved boat red atau green Identifikasi semua red dan green boats, kemudian cari sailor yang memiliki salah satu dari dua warna boat tersebut.

Tempboats juga dapat didefinisikan dengan menggunakan operator Union (bagaimana caranya?) Apa yang didapatkan jika operator v diganti dengan ^ dalam query diatas? Cari Sailor yang memiliki red dan green boat Harus diidentifikasi sailor yang memiliki red boat dan sailor yang memiliki green boat, kemudian lakukan intersection (catatan : sid adalah kunci pada relasi Sailors) : Cari nama semua Sailors yang memiliki reserved boat Gunakan division; skema dari relasi input harus dipilih dengan hati-hati. Untuk mendapatkan semua Sailors yang memiliki reserved boat Interlake Ringkasan Model relasional secara detail didefinisikan oleh bahasa query yang bersifat simple dan powerful Aljabar relasional lebih operasional; berguna untuk representasi internal dari evaluasi perencanaan suatu query. Beberapa cara dapat dipakai untuk mengekspresikan suatu query, dan dipilih cara yang paling efisien.