BAHASA KUERI.

Slides:



Advertisements
Presentasi serupa
Aljabar Relasional Materi pertemuan.
Advertisements

Bahasa Pada Model Data Relasional
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.
Aljabar Relasional.
Aljabar Relasional Materi pertemuan.
Aljabar Relasional.
Pertemuan Minggu Ke-5 KALKULUS RELASIONAL.
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
Oleh: Henry Primandari,S.Kom STMIK-MDP Palembang
INNER JOIN.
Query Bahasa Formal.
Aljabar Relasional Materi pertemuan.
SQL (Structured Query Language) Materi Pertemuan
4. RELASI.
Pertemuan 9 BAHASA QUERY FORMAL.
SQL (Structured Query Language)
ALJABAR RELATIONAL.
SQL (Structured Query Language)
STRUCTURED QUERY LANGUAGE (SQL)
Aljabar Relasional Materi pertemuan.
SQL (Structured Query Language)
Basis Data Bab VIII Bahasa Kueri Presented by Mulyono, S.Si, M.Kom
Model Basis Data Relasional
Relasi Dalam Basis Data
bahasa Query basis data bab 8
Aljabar Relasional (Relational Algebra)
ALJABAR RELASIONAL
Daniel Damaris Novarianto S. UNIV. GUNADARMA
Operasi Relasional Basis Data
SQL (Structured Query Language)
PENGAKSESAN QUERY.
Harsiti, ST Fakultas Teknologi Informasi Universitas Serang Raya 2009
ALJABAR RELASIONAL dan QUERY
SQL (Structured Query Language)
ALJABAR RELASIONAL DAN KALKULUS RELASIONAL
Aljabar Relational (Relational Algebra) MEETING 6
PENGAKSESAN QUERY OLEH : Slamet Sn.
SISTEM BASIS DATA STMIK BANI SALEH BEKASI Salim
ALJABAR RELASIONAL (latihan)
Model Relational DATABASE
SQL (Structured Query Language)
Presented by Team Basis Data
Relasi Dalam Basis Data
BASIS DATA Relasi Aljabar (1) 1.
Operasi Relasional Basis Data
Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Gunadarma
Matakuliah : Sistem Basisdata Versi Materi
Aljabar Dan Kalkulus Relasional
Aljabar Relasional.
PENGAKSESAN QUERY OLEH : HARSITI, ST.
MODEL DATA RELASIONAL.
Aljabar Relational (Relational Algebra) MEETING 6
Aljabar Relational.
MODEL DATA RELASIONAL (1)
Basis Data - Udinus Semarang
Relasi Dalam Basis Data
Relasi Dalam Basis Data
Yufis Azhar – Teknik Informatika – UMM
Relasi Basis Data Universitas Telkom
Basis Data Bahasa Kueri Basis Data
Model dan Aljabar Relasional
ALJABAR RELASIONAL (LANJUTAN)
MODEL DATA RELASIONAL.
Basis Data Bahasa Kueri Basis Data
Transcript presentasi:

BAHASA KUERI

Materi : BahasaKueri Formal Aljabar Relasional Kalkulus Relasional Komersial SQL

Pemrosesan Kueri Sejumlah aktifitas yang dilakukan untuk pengambilan data Aktifitas meliputi transformasi dari berbagai kueri dari level logik ke level fisik Klasifikasi aktifitas meliputi : Parsing, optimasi, evaluasi kueri

Klasifikasi Aktifitas Parser & Transleter Ekspresi Aljabar Kueri Optimizer Informasi Rencana Mesin Evaluasi Hasil Kueri Data

Menghasilkan output yang sama Kueri  diterjemahkan(Parsing) oleh modul parser kedalam bahasa mesin (internal kueri)  memeriksa sintak kueri, nama table  menghasilkan representatif hirarkis yang memudahkan translasi ke model ekspresi aljabar relasional. Contoh : select kdmk,sks from matkul where semester>3 Kueri di translasikan pada salah satu ekspresi aljabar relasional : 1. σ semester>3 (π kdmk,sks(matkul)) 2. π kdmk,sks (σ semester>3(matkul)) Menghasilkan output yang sama

σ semester>3 (π kdmk,sks(matkul)) Ekspresi 1 σ semester>3 (π kdmk,sks(matkul)) σ semester>3 ( urutan 1 ) ( urutan 2 ) Sem,kdmk,sks disimpan dalam buffer

π kdmk,sks (σ semester>3(matkul)) Ekspresi 2 π kdmk,sks (σ semester>3(matkul)) σ semester>3 ( urutan 1 ) Sem,kdmk,sks disimpan dalam buffer ( urutan 2 )

Bahasa Kueri Formal Bahasa query formal basis data relasional adalah bahasa untuk meminta informasi dari basis data yang menggunakan notasi matematik Ada 2 dasar pembentukan dan selanjutnya menentukan cara query dalam Bahasa Query yaitu : Aljabar Relasional dan Kalkulus Relasional

Aljabar Relational Relational Algebra (aljabar relasional) 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.

Operasi dalan Aljabar Relasional 5 operasi dasar: (Unary Operation) : Selection () , Projection () (Binary Operation): Cartesian – product (X), Union (), Set – difference (-),Rename () Operasi – operasi turunan : (Binary Operation) Set intersection (),Theta join (), Natural-join ( ), Outer-join ( ), Division (  )

Selection () Notasi : σp(r) Operasi untuk menyeleksi tupel – tupel yang memenuhi suatu predikat Ilustrasi : Operator aritmatik (<,>,>=,<=,=,#) Operator logika untuk predikat manjemuk menggunakan penghubung AND (  ) dan OR (  ). 1 Bbb Ccc Ddd 2 Eee Fff Ggg 3 Hhh Iii Jjj 4 Kkk Lll Mmm 5 Nnn Ooo Ppp 6 Qqq Rrr Sss 7 Ttt Vvv Www

Contoh : Relasi/Table : Dosen 1. Tampilkan daftar dosen yang berkota di ‘Bekasi kota=’Bekasi’ (Dosen)

2. Tampilkan daftar dosen yang tinggal di ‘Jakarta’ atau ‘Bogor’ Kota=’Jakarta’  kota =’Bogor’ (Dosen) 3. Tampilkan daftar dosen yang tinggal di kota ‘Bogor’ dan jenis kelaminnya ‘Pria’

Operasi Project (  ) operasi untuk memperoleh kolom – kolom tertentu. Ilustrasi : Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut :  colum1,…,column ( tabel) 1 Bbb Ccc Ddd 2 Eee Fff Ggg 3 Hhh Iii Jjj 4 Kkk Lll Mmm 5 Nnn Ooo Ppp 6 Qqq Rrr Sss 7 Ttt Vvv Www

Contoh : Table/relasi dosen 1.Tampilkan kddos,nama_dos,jekel,kota dari relasi Dosen  kddos,namados,jekel,kota(Dosen)

Tampilkan kddos,namados, alamat,kota untuk dosen yang tinggal di Bogor 2. Select dan Project Tampilkan kddos,namados, alamat,kota untuk dosen yang tinggal di Bogor  kddos,namados,alamat,kota(tkota=‘Bogor’ (Dosen))

Operasi Cartesian Product 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} 1 Xxx Bbb Ccc Ddd 10 Eee Fff Ggg 3 Hhh Iii Jjj 2 Kkk Lll Mmm 6 Opo 1 Bbb Ccc Ddd 10 Eee Fff Ggg 3 Hhh Iii Jjj 2 Kkk Lll Mmm 1 Xxx 6 Opo R S R X S

Contoh : AJAR MATAKULIAH alias MK AJAR X MK KDDOS HARI JAM KDMK KELAS 0001 1 3 TI005 SM01 0020 SM03 0015 7 PP001 KDMK NAMAMK SKS TI005 Pengantar WEB 3 TI001 Sistem Basis Data PP001 Pancasila 2 AJAR X MK KDDOS HARI JAM ajar.KDMK KELAS Mk.KDMK NAMAMK SKS 0001 1 3 TI005 SM01 Pengantar WEB TI001 Sistem Basis Data PP001 Pancasila 2 0020 SM03 0015 7

Contoh Tampilkan kddos, kdmk, namamk, kelas, hari, jam untuk dosen yang mengajar pada jam ke 3  kddos,ajar.kdmk,namamk,kelas,hari,jam (ajar.kdmk=mk.kdmk ^ jam =‘3’(ajar x mk)) KDDOS ajar.KDMK NAMAMK KELAS HARI JAM 0001 TI005 Pengantar WEB SM01 1 3 0020 SM03

Operasi Union(  ) Operasi untuk menghasilkan gabungan table dengan 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} Memiliki derajat yang sama

Contoh : Tabel Dosen Mahasiswa  Dosen NIM NAMA_MHS ALAMAT_MHS KOTA 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 Mahasiswa  Dosen Tidak bisa, karena derajat mahasiswa tdk sama dengan Dosen

Tampilkan kota tempat tinggal mahasiswa dan dosen Jila dilakukan operasi union :  kota (mahasiswa)  kota (Dosen) Maka hasilnya : KOTA Bogor Jakarta KOTA Bekasi Jakarta KOTA Bogor Jakarta Bekasi

Operasi Set Difference Operasi untuk mendapatkan table pada relasi pertama, tapi tidak ada pada relasi yang lainnya. Sintaks 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.

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

Contoh Operasi Set Difference Tampilkan matakuliah yang ditawarkan pada S1 tetapi tidak ada di D3 Maka hasil operasi : nama_kul (Kuliah_S1) - nama_kul (Kuliah_D3) Nama_kul Pemrograman I Struktur Data Basis Data Pemrograman II Sistem Basis Sata Sistem Pakar Nama_kul Pemrograman I Aplikasi Akuntansi Struktur Data Basis Data Nama_kul Pemrograman II Sistem Basis Data Sistem Pakar

Operasi rename(  ) Operasi untuk menyalin table lama kedalam table yang baru Sintaks sebagai berikut :  [nama_table] (table_lama) Salinlah table baru dengan nama DosenNew dari table Dosen, dimana jenis kelaminnya adalah ‘Pria’.  DosenNew (  jkelamin=’Pria’) (Dosen))

Natural Join Menghasilkan tabel hasil kemungkinan kombinasi suatu relasi dengan relasi lain, dimana antar relasi memiliki atribut yang memiliki domain yang sama Sintaks sebagai berikut : R S Ilustrasi r1 r2 a 1 b 2 r2 r3 1 x y 3 z r1 r2 r3 a 1 x y R R S S

Contoh Ajar Matakuliah alias MK Ajar MK KDDOS HARI JAM KDMK KELAS 0001 3 TI005 SM01 0020 SM03 0015 7 PP001 KDMK NAMAMK SKS TI005 Pengantar WEB 3 TI001 Sistem Basis Data PP001 Pancasila 2 Ajar MK KDDOS HARI JAM KDMK KELAS NAMAMK SKS 0001 1 3 TI005 SM01 Pengantar WEB 0020 SM03 0015 7 PP001 Pancasila 2

Set-Intersection () Sintaks adalah : A  B = A – (A-B) atau B  A = B – (B-A) Ilustrasi : R S R - S S - R A B D H C F A B T H D F M N D H A C T H M N R  S = R - ( R - S ) A B D H C F D H A C S  R = S - ( S - R ) A B D F A B T H D F M N T H M N A B D F

Jika diketahui Tabel matakuliah S1 dan D3 berikut : Kode_kul Nama_kul Sks sem IF-110 Pemrograman I 3 1 IF-221 Struktur Data 2 IF-310 Basis Data 4 IF-320 Pemrograman II IF-411 Sistem Basis Sata IF-423 Sistem Pakar Tabel Kuliah_S1 Kode_kul Nama_kul Sks Sem IF-110 Pemrograman I 3 1 IF-120 Aplikasi Akuntansi 2 IF-221 Struktur Data IF-310 Basis Data 4 Tabel Kuliah_D3

nama_kul (Kuliah_S1)  nama_kul (Kuliah_D3) Tampilkan matakuliah yang ditawarkan pada S1 dan D3 Maka hasil operasi : nama_kul (Kuliah_S1)  nama_kul (Kuliah_D3) Nama_kul Pemrograman I Struktur Data Basis Data Pemrograman II Sistem Basis Sata Sistem Pakar Nama_kul Pemrograman I Aplikasi Akuntansi Struktur Data Basis Data  Nama_kul Pemrograman I Struktur Data Basis Data

Operasi Divisi (÷) Cocok digunakan untuk pernyataan “ untuk semua” Contoh : Tampilkan untuk semua mahasiswa yang mengambil Matakuliah di semester 1 Diketahui : Tabel Kuliah {kd_mk,nmmk,sks,sem} Tabel Nilai{kd_mk,npm,grade} Tabel Mhs{npm,nama,alamat,kota,tgl_l}

Tabel Kuliah Tabel Nilai Kd_mk Nmmk Sks sem IF-110 Struktur Data 3 1 Sistem Informasi IF-310 Basis Data 4 2 IF-221 Pemrograman II IF-411 Sistem Basis Sata IF-423 Sistem Pakar Tabel Nilai Kdmk Npm grade IF-110 1001 A 1002 B IF-120 1004 IF-221 C IF-310 1003

Πnama,kdmk (mhs kuliah) ÷ Π kdmk(σsem=1(Kuliah) Tabel MHS NPM NAMA ALAMAT KOTA 1001 ALI AKBAR JL. DAGO BANDUNG 1002 BUDI SANTOSO JL. LAYUR JAKARTA 1003 INDAH JL. MAWAR DEPOK 1004 SANTI JL. PAUS Tampilkan untuk semua mahasiswa yang mengambil Matakuliah di semester 1 Πnama,kdmk (mhs kuliah) ÷ Π kdmk(σsem=1(Kuliah) NAMA ALI AKBAR BUDI SANTOSO SANTI