Bahasa Query Formal




Bahasa Query Formal


Dalam bahasa Query Formal, ada dua dasar pembentukan bahasa Query, yaitu:
1.Aljabar Relasional
2.Kalkulus Relasional
Dalam pembahasan ini hanya akan membahas tentang Aljabar Relasional karna lebih banyak dijadikan dasar Bahasa Query yang umum digunakan.

ALJABAR RELASIONAL
Adalah kumpulan operasi terhadap relasi, dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi yang baru. Bahasa Query yang didasarkan pada operasi -operasi dalam Aljabar Relasional merupakan bahasa query yang
Prosedural.

OPERATOR RELATIONAL
1. Restrict ( s ) adalah Pemilihan tupel atau record
2. Project ( p ) adalah pemilihan attribute atau field
3. Divide ( ¸ ) adalah membagi
4. Join ( q ) adalah menggabungkan

ALJABAR RELASIONAL
Operator pada aljabar relational dibagi menjadi 2 kelompok:
1. Operator dasar untuk fundamental operational
2. Operator tambahan untuk additional operasional
Tabel dibawah ini adalah contoh untuk mengerjakan perintah – perintah Relation Algebra:


    Relasi : Mata Kuliah


    Relasi : Registrasi 

    Relasi : Registrasi

    Relasi : Dosen


Operator Dasar
a. Selection ( s ) Lower Case Omega
Operasi selection menyeleksi tupel-tupel pada sebuah
relation yang memenuhi predicate/syarat yang sudah
ditentukan Contoh :

1. Mencari tuple-tuple dari MAHASISWA yang memiliki jenis kelamin laki-laki, Ekspresi aljabar relational :
σ J_KEL=“LAKI-LAKI” (MAHASISWA)
2. Tampilkan data mata kuliah yang memiliki kode 360 atau
yang memilki sks 4 σ KD_MK=“306” V SKS=4 (MATAKULIAH)

b. Projection ( p )
Operator projection beroperasi pada sebuah relation,
yaitu membentuk relation baru dengan mengcopy
atribute-atribute dan domain-domain dari relation
tersebut berdasarkan argumen-argumen pada
operator tersebut. Contoh :
Tampilkan nama beserta gaji dari dosen pnama_dos,gaji (DOSEN)

c. Cartesian product ( X )
Operator dengan dua relasi untuk menghasilkan tabel
hasil perkalian kartesian.
Contoh :
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’.
p nid, nama_d, nama_mk, thn_akademik,smt, hari,jam_ke, waktu, kelas ( s smt=1 ÙDosen.nid = Mengajar.nid Ùmengajar.kdmk = Matakuliah.kdmk (DosenxMatakuliahxMengajar))

d. Union ( È )
Operasi untuk menghasilkan gabungan tabel dengan syarat kedua tabel memiliki atribut yang sama yaitu domain atribut ke-i masing-masing tabel harus sama RUS={ X I X E R atau X E S}
Contoh :
Penggabungan berdasarkan kolom kota dari table mahasiswa dengan tabel dosen.
p kota (mahasiswa) È pkota (Dosen)

e. Set diference ( - )
Operasi untuk mendapatkan tabel dis uatu relasi tapi tidak ada di
relasi lainnya. R – S = { X I X E R dan X E S }
Contoh : Tampilkan nama dari mahasiswa yang tinggal di depok tetapi bukan berjenis kelamin perempuan
Query I : tampilkan nama yang tinggal di depok
pnama_mhs(salamat=“DEPOK” (MAHASISWA))
Query II : tampilkan nama yang berjenis kelamin perempuan
pnama_mhs(sj_kel =“PEREMPUAN” (MAHASISWA))
Tampilkan query I minus query II :
pnama_mhs(salamat=“DEPOK”(MAHASISWA))-
pnama_mhs(sj_kel=“PEREMPUAN” (MAHASISWA))

Operator Tambahan
1. SET INTERSECTION ( Ç )
Operasi untuk menghasilkan irisan dua tabel dengan
syarat kedua tabel memiliki atribut yang sama, domain
atribut ke-i kedua tabel tersebut sama.

2. THETA JOIN
Operasi yang menggabungkan operasi Cartesian product dengan operasi selection dengan suatu kriteria.

3. NATURAL JOIN
Operasi menggabungkan operasi selection dan cartesian product dengan suatu kriteria pada kolom yang sama

4. DIVISION
Merupakan operasi pembagian atas tuple-tuple dari 2 relation



Berlangganan update artikel terbaru via email:

Belum ada Komentar untuk "Bahasa Query Formal"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel